Function at 0x1800060f0
Capabilities:
Link many functions at runtime

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov edi, ecx
call sub.kernel32.dll_CreateTimerQueue
test rax, rax
je 0x1800066d7
mov rsi, rax
xor ecx, ecx
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call sub.kernel32.dll_CreateEventW
test rax, rax
je 0x1800066d7
xor ecx, ecx
call sub.kernel32.dll_GetModuleHandleA
test rax, rax
je 0x1800066d7
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
je 0x1800066d7
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
call sym.rand::rngs::thread::thread_rng::h4894d89eb4679d6f
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0x50]
call sym.rand::rng::Rng::fill::he598726f231b0bd5
lea rax, [0x180107ce6]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0x489371c2
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::h6b367a88538e9ad1
mov ecx, 0xf6285b02
xor ecx, dword [rax]
movzx eax, word [rax + 4]
mov edx, eax
xor dl, 0x66
shr eax, 8
xor al, 0xd1
movzx eax, al
shl rax, 0x28
movzx edx, dl
shl rdx, 0x20
or rdx, rax
mov dword [rsp + 0x38], ecx
shr rdx, 0x20
mov word [rsp + 0x3c], dx
lea rcx, [rsp + 0x38]
call sub.kernel32.dll_LoadLibraryA
mov rbx, rax
lea rax, [0x1801110b3]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0x24199433
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::hd4ef5b821b24acbb
movabs rcx, 0xd82337c44723c0d8
xor rcx, qword [rax]
movabs rdx, 0xf8e790c265a6fd89
xor rdx, qword [rax + 8]
movzx eax, word [rax + 0x10]
mov r8d, eax
xor r8b, 0x1d
shr eax, 8
xor al, 0x62
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x30], r8b
mov byte [rsp + 0x31], al
lea rdx, [rsp + 0x20]
mov rcx, rbx
call sub.kernel32.dll_GetProcAddress
mov rbx, rax
lea rax, [0x180115163]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0xda12a734
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::he5c2242f10d3100c
mov ecx, 0x33e35612
xor ecx, dword [rax]
movzx eax, word [rax + 4]
mov edx, eax
xor dl, 0xc2
shr eax, 8
xor al, 0x6a
movzx eax, al
shl rax, 0x28
movzx edx, dl
shl rdx, 0x20
or rdx, rax
mov dword [rsp + 0x38], ecx
shr rdx, 0x20
mov word [rsp + 0x3c], dx
lea rcx, [rsp + 0x38]
call sub.kernel32.dll_GetModuleHandleA
mov r14, rax
lea rax, [0x18010fbbb]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0x2289754a
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::hdc7bf4328b0d7d6b
movabs rcx, 0xb7b4e6afa1ada5c5
xor rcx, qword [rax]
movzx edx, byte [rax + 0xa]
movzx eax, word [rax + 8]
mov r8d, eax
shr r8d, 8
not al
xor r8b, 0x70
xor dl, 0x43
mov qword [rsp + 0x20], rcx
mov byte [rsp + 0x28], al
mov byte [rsp + 0x29], r8b
mov byte [rsp + 0x2a], dl
lea rdx, [rsp + 0x20]
mov rcx, r14
call sub.kernel32.dll_GetProcAddress
mov r14, rax
lea rax, [0x18010a99f]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0x8324b6be
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::he9d0a383c1326a16
movabs rcx, 0x6d3f7bef63da4f13
xor rcx, qword [rax]
movzx eax, byte [rax + 8]
xor al, 0xe
mov qword [rsp + 0x38], rcx
mov byte [rsp + 0x40], al
lea rcx, [rsp + 0x38]
call sub.kernel32.dll_LoadLibraryA
mov r15, rax
lea rax, [0x18010e02a]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0xaba9f710
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::he9cd64c109e10236
movabs rcx, 0x1ad5731e2ccc8f8
xor rcx, qword [rax]
movabs rdx, 0xa9912642c22f7014
xor rdx, qword [rax + 8]
movzx eax, word [rax + 0x10]
mov r8d, eax
xor r8b, 0x2e
shr eax, 8
xor al, 0x3d
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x30], r8b
mov byte [rsp + 0x31], al
lea rdx, [rsp + 0x20]
mov rcx, r15
call sub.kernel32.dll_GetProcAddress
mov r15, rax
lea rax, [0x180105768]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0xcb1df414
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::hfe32234a1894e985
movabs rcx, 0x3993e1582919c2fb
xor rcx, qword [rax]
mov edx, 0xf2a0b304
xor edx, dword [rax + 8]
movzx eax, byte [rax + 0xc]
xor al, 0xe4
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x40], edx
mov byte [rsp + 0x44], al
lea rcx, [rsp + 0x38]
call sub.kernel32.dll_LoadLibraryA
mov r12, rax
lea rax, [0x180113f8c]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0x1b571b31
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::h60b612f2223f82c6
movabs rcx, 0x3a3757d30478a91e
xor rcx, qword [rax]
mov edx, 0xc966a915
xor edx, dword [rax + 8]
movzx r8d, byte [rax + 0xe]
movzx eax, word [rax + 0xc]
mov r9d, eax
shr r9d, 8
xor al, 0xd7
xor r9b, 0xe1
xor r8b, 0xc4
mov qword [rsp + 0x20], rcx
mov dword [rsp + 0x28], edx
mov byte [rsp + 0x2c], al
mov byte [rsp + 0x2d], r9b
mov byte [rsp + 0x2e], r8b
lea rdx, [rsp + 0x20]
mov rcx, r12
call sub.kernel32.dll_GetProcAddress
mov r12, rax
lea rax, [0x18010ad6a]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0x5b11381f
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::h90835690ce13fee7
movabs rcx, 0x94831ffde8115505
xor rcx, qword [rax]
mov edx, 0x18e44c23
xor edx, dword [rax + 8]
movzx eax, byte [rax + 0xc]
xor al, 0xf3
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x40], edx
mov byte [rsp + 0x44], al
lea rcx, [rsp + 0x38]
call sub.kernel32.dll_LoadLibraryA
mov r13, rax
lea rax, str.F.D
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0xd39eae30
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::hcc9fc8569441e974
movabs rcx, 0xe0ceb611a2d3d8f
xor rcx, qword [rax]
movabs rdx, 0x69bfd206ff70d8f1
xor rdx, qword [rax + 8]
mov r8d, 0xec1424d9
xor r8d, dword [rax + 0x10]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x30], r8d
lea rdx, [rsp + 0x20]
mov rcx, r13
call sub.kernel32.dll_GetProcAddress
mov r13, rax
lea rax, [0x18011333f]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x20], 0x556c811e
mov edx, dword [rsp + 0x20]
call sym.obfstr::xref::inner::h0bbdc7487ded2e49
movabs rcx, 0x8a15f1f0f8e303ba
xor rcx, qword [rax]
mov edx, 0xb1569745
xor edx, dword [rax + 8]
movzx eax, byte [rax + 0xc]
xor al, 0xda
mov qword [rsp + 0x20], rcx
mov dword [rsp + 0x28], edx
mov byte [rsp + 0x2c], al
lea rcx, [rsp + 0x20]
call sub.kernel32.dll_LoadLibraryA
mov rbp, rax
lea rax, [0x18010ed13]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x38]
mov rcx, qword [rsp + 0x38]
mov dword [rsp + 0x38], 0x3f09ea95
mov edx, dword [rsp + 0x38]
call sym.obfstr::xref::inner::hf8d28e31f9c53061
movabs rcx, 0xaada1dabbeab290e
xor rcx, qword [rax]
movzx eax, byte [rax + 8]
xor al, 0x9c
mov qword [rsp + 0x38], rcx
mov byte [rsp + 0x40], al
lea rdx, [rsp + 0x38]
mov rcx, rbp
call sub.kernel32.dll_GetProcAddress
movq xmm0, r14
movq xmm1, rbx
punpcklqdq xmm1, xmm0
movq xmm0, r12
movq xmm2, r15
punpcklqdq xmm2, xmm0
pxor xmm0, xmm0
pcmpeqd xmm2, xmm0
pcmpeqd xmm1, xmm0
movdqa xmm0, xmm1
shufps xmm0, xmm2, 0xdd
shufps xmm1, xmm2, 0x88
andps xmm1, xmm0
movmskps ecx, xmm1
test ecx, ecx
jne 0x18000669b
test r13, r13
je 0x18000669b
test rax, rax
je 0x18000669b
xor ecx, ecx
mov edx, 1
xor r8d, r8d
xor r9d, r9d
call sub.kernel32.dll_CreateEventW
test rax, rax
je 0x18000669b
mov rbx, rax
mov rcx, rax
mov edx, edi
call sub.kernel32.dll_WaitForSingleObject
test eax, eax
je 0x1800066bd
mov rcx, qword [rsp + 0x48]
dec qword [rcx]
jne 0x1800066d7
dec qword [rcx + 8]
jne 0x1800066d7
mov edx, 0x170
mov r8d, 0x10
call sym.__rust_dealloc
jmp 0x1800066d7
mov rcx, rbx
call fcn.18010246c
mov rcx, rsi
call sub.kernel32.dll_DeleteTimerQueue
lea rcx, [rsp + 0x48]
call sym.__alloc::rc::Rc_T_A__as_core::ops::drop::Drop_::drop::ha04f1356a7dee452
nop
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret