Last active
December 4, 2021 11:02
-
-
Save ujjwal-kr/a4e62a1ce5f4ac1b1f64dc6dc4374822 to your computer and use it in GitHub Desktop.
REV
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void _ZN4core3ptr116drop_in_place$LT$core..future..from_generator..GenFuture$LT$sussy_malware..main..$u7b$$u7b$closure$u7d$$u7d$$GT$$GT$17hf1a31799a84a7582E.llvm.11713022222054205904 | |
(int64_t arg1) | |
{ | |
int64_t *piVar1; | |
int64_t iVar2; | |
int64_t iVar3; | |
int64_t iVar4; | |
int64_t iVar5; | |
undefined8 *puVar6; | |
if (*(char *)(arg1 + 0x20) != '\x04') { | |
if (*(char *)(arg1 + 0x20) != '\x03') { | |
return; | |
} | |
if (*(char *)(arg1 + 0x188) == '\x03') { | |
if (*(int64_t *)(arg1 + 0x50) == 0) { | |
if ((9 < *(uint8_t *)(arg1 + 0x58)) && (*(int64_t *)(arg1 + 0x68) != 0)) { | |
(**(code **)0x33c070)(*(undefined8 *)(arg1 + 0x60), *(int64_t *)(arg1 + 0x68), 1); | |
} | |
if (*(int64_t *)(arg1 + 0x78) != 0) { | |
(**(code **)0x33c070)(*(undefined8 *)(arg1 + 0x70), *(int64_t *)(arg1 + 0x78), 1); | |
} | |
core::ptr::drop_in_place<http::header::map::HeaderMap>::h23f5ebd2eb3eba5d(arg1 + 200); | |
if ((*(int64_t *)(arg1 + 0x128) != 0) && (*(int64_t *)(arg1 + 0x148) != 0)) { | |
(**(code **)(*(int64_t *)(arg1 + 0x148) + 8)) | |
(arg1 + 0x140, *(undefined8 *)(arg1 + 0x130), *(undefined8 *)(arg1 + 0x138)); | |
} | |
iVar5 = *(int64_t *)(arg1 + 0x160); | |
if (iVar5 != 0) { | |
iVar2 = *(int64_t *)(arg1 + 0x150); | |
iVar4 = 0; | |
do { | |
iVar3 = *(int64_t *)(iVar2 + 8 + iVar4); | |
if (iVar3 != 0) { | |
__rust_dealloc(*(undefined8 *)(iVar2 + iVar4), iVar3, 1); | |
} | |
iVar4 = iVar4 + 0x58; | |
} while (iVar5 * 0x58 - iVar4 != 0); | |
} | |
if ((*(int64_t *)(arg1 + 0x158) != 0) && (iVar5 = *(int64_t *)(arg1 + 0x158) * 0x58, iVar5 != 0)) { | |
(**(code **)0x33c070)(*(undefined8 *)(arg1 + 0x150), iVar5, 8); | |
} | |
piVar1 = *(int64_t **)(arg1 + 0x168); | |
LOCK(); | |
*piVar1 = *piVar1 + -1; | |
if (*piVar1 == 0) { | |
alloc::sync::Arc<T>::drop_slow::ha38273adbe08fc33(arg1 + 0x168); | |
} | |
(***(code ***)(arg1 + 0x178))(*(undefined8 *)(arg1 + 0x170)); | |
iVar5 = *(int64_t *)(*(int64_t *)(arg1 + 0x178) + 8); | |
if (iVar5 != 0) { | |
(**(code **)0x33c070) | |
(*(undefined8 *)(arg1 + 0x170), iVar5, *(undefined8 *)(*(int64_t *)(arg1 + 0x178) + 0x10)) | |
; | |
} | |
core::ptr::drop_in_place<core::option::Option<core::pin::Pin<alloc::boxed::Box<tokio::time::driver::sleep::Sleep>>>>::h73337cca111b50e3 | |
(arg1 + 0x180, iVar5); | |
} else { | |
piVar1 = *(int64_t **)(arg1 + 0x58); | |
if (piVar1 != (int64_t *)0x0) { | |
if (*piVar1 != 0) { | |
(**(code **)piVar1[1])(); | |
iVar5 = *(int64_t *)(piVar1[1] + 8); | |
if (iVar5 != 0) { | |
(**(code **)0x33c070)(*piVar1, iVar5, *(undefined8 *)(piVar1[1] + 0x10)); | |
} | |
} | |
if ((*(int32_t *)(piVar1 + 10) != 2) && (piVar1[3] != 0)) { | |
(**(code **)0x33c070)(piVar1[2], piVar1[3], 1); | |
} | |
(**(code **)0x33c070)(*(undefined8 *)(arg1 + 0x58), 0x70, 8); | |
} | |
} | |
piVar1 = *(int64_t **)(arg1 + 0x38); | |
LOCK(); | |
*piVar1 = *piVar1 + -1; | |
if (*piVar1 == 0) { | |
alloc::sync::Arc<T>::drop_slow::ha38273adbe08fc33(arg1 + 0x38); | |
} | |
*(undefined *)(arg1 + 0x189) = 0; | |
} | |
goto code_r0x0007a6d3; | |
} | |
if (*(char *)(arg1 + 0x2d0) == '\0') { | |
core::ptr::drop_in_place<http::header::map::HeaderMap>::h23f5ebd2eb3eba5d(arg1 + 0xd0); | |
puVar6 = *(undefined8 **)(arg1 + 0x130); | |
if (puVar6[1] != 0) { | |
(**(code **)0x33c070)(*puVar6, puVar6[1], 1); | |
puVar6 = *(undefined8 **)(arg1 + 0x130); | |
} | |
(**(code **)0x33c070)(puVar6, 0x58, 8); | |
if (*(int64_t *)(arg1 + 0x138) == 0) { | |
(**(code **)(*(int64_t *)(arg1 + 0x158) + 8)) | |
(arg1 + 0x150, *(undefined8 *)(arg1 + 0x140), *(undefined8 *)(arg1 + 0x148)); | |
} else { | |
(***(code ***)(arg1 + 0x148))(*(undefined8 *)(arg1 + 0x140)); | |
iVar5 = *(int64_t *)(*(int64_t *)(arg1 + 0x148) + 8); | |
if (iVar5 != 0) { | |
(**(code **)0x33c070) | |
(*(undefined8 *)(arg1 + 0x140), iVar5, *(undefined8 *)(*(int64_t *)(arg1 + 0x148) + 0x10)); | |
} | |
core::ptr::drop_in_place<core::option::Option<core::pin::Pin<alloc::boxed::Box<tokio::time::driver::sleep::Sleep>>>>::h73337cca111b50e3 | |
(arg1 + 0x150, iVar5); | |
} | |
if (*(uint64_t *)(arg1 + 0x160) == 0) goto code_r0x0007a6d3; | |
puVar6 = (undefined8 *)(arg1 + 0x160); | |
<hashbrown::raw::RawTable<T,A> as core::ops::drop::Drop>::drop::h6c677d072ff6415a(*(uint64_t *)(arg1 + 0x160)); | |
} else { | |
if (*(char *)(arg1 + 0x2d0) != '\x03') goto code_r0x0007a6d3; | |
// switch table (6 cases) at 0x229c54 | |
switch(*(undefined *)(arg1 + 0x288)) { | |
case 0: | |
if (*(int64_t *)(arg1 + 0x210) == 0) { | |
(**(code **)(*(int64_t *)(arg1 + 0x230) + 8)) | |
(arg1 + 0x228, *(undefined8 *)(arg1 + 0x218), *(undefined8 *)(arg1 + 0x220)); | |
} else { | |
(***(code ***)(arg1 + 0x220))(*(undefined8 *)(arg1 + 0x218)); | |
iVar5 = *(int64_t *)(*(int64_t *)(arg1 + 0x220) + 8); | |
if (iVar5 != 0) { | |
(**(code **)0x33c070) | |
(*(undefined8 *)(arg1 + 0x218), iVar5, *(undefined8 *)(*(int64_t *)(arg1 + 0x220) + 0x10)) | |
; | |
} | |
core::ptr::drop_in_place<core::option::Option<core::pin::Pin<alloc::boxed::Box<tokio::time::driver::sleep::Sleep>>>>::h73337cca111b50e3 | |
(arg1 + 0x228, iVar5); | |
} | |
break; | |
case 5: | |
if (*(int64_t *)(arg1 + 0x2b8) != 0) { | |
(**(code **)0x33c070)(*(undefined8 *)(arg1 + 0x2b0), *(int64_t *)(arg1 + 0x2b8), 1); | |
} | |
*(undefined *)(arg1 + 0x28a) = 0; | |
case 4: | |
*(undefined *)(arg1 + 0x28b) = 0; | |
if (*(char *)(arg1 + 0x289) != '\0') { | |
(**(code **)(*(int64_t *)(arg1 + 0x280) + 8)) | |
(arg1 + 0x278, *(undefined8 *)(arg1 + 0x268), *(undefined8 *)(arg1 + 0x270)); | |
} | |
case 3: | |
*(undefined *)(arg1 + 0x289) = 0; | |
if (*(int64_t *)(arg1 + 0x238) == 0) { | |
(**(code **)(*(int64_t *)(arg1 + 600) + 8)) | |
(arg1 + 0x250, *(undefined8 *)(arg1 + 0x240), *(undefined8 *)(arg1 + 0x248)); | |
} else { | |
(***(code ***)(arg1 + 0x248))(*(undefined8 *)(arg1 + 0x240)); | |
iVar5 = *(int64_t *)(*(int64_t *)(arg1 + 0x248) + 8); | |
if (iVar5 != 0) { | |
(**(code **)0x33c070) | |
(*(undefined8 *)(arg1 + 0x240), iVar5, *(undefined8 *)(*(int64_t *)(arg1 + 0x248) + 0x10)) | |
; | |
} | |
core::ptr::drop_in_place<core::option::Option<core::pin::Pin<alloc::boxed::Box<tokio::time::driver::sleep::Sleep>>>>::h73337cca111b50e3 | |
(arg1 + 0x250, iVar5); | |
} | |
} | |
core::ptr::drop_in_place<http::header::map::HeaderMap>::h23f5ebd2eb3eba5d(arg1 + 0x170); | |
puVar6 = *(undefined8 **)(arg1 + 0x1d0); | |
if (puVar6[1] != 0) { | |
(**(code **)0x33c070)(*puVar6, puVar6[1], 1); | |
puVar6 = *(undefined8 **)(arg1 + 0x1d0); | |
} | |
(**(code **)0x33c070)(puVar6, 0x58, 8); | |
if (*(uint64_t *)(arg1 + 0x200) == 0) goto code_r0x0007a6d3; | |
puVar6 = (undefined8 *)(arg1 + 0x200); | |
<hashbrown::raw::RawTable<T,A> as core::ops::drop::Drop>::drop::h6c677d072ff6415a(*(uint64_t *)(arg1 + 0x200)); | |
} | |
(**(code **)0x33c070)(*puVar6, 0x20, 8); | |
code_r0x0007a6d3: | |
if ((*(int64_t *)(arg1 + 8) != 0) && (iVar5 = *(int64_t *)(arg1 + 8) << 4, iVar5 != 0)) { | |
// WARNING: Treating indirect jump as call | |
(*_free)(*(undefined8 *)arg1, iVar5, 8); | |
return; | |
} | |
return; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment