Function at 0x3a987c
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x480
mov dword [esp + 0x20], 0x4b85f6
xor edx, edx
or dword [esp + 0x20], 0xdaea378f
mov ecx, 0x4e0b416
xor dword [esp + 0x20], 0xdaebb7ff
mov dword [esp + 0x24], 0xa9adf9
shr dword [esp + 0x24], 6
shl dword [esp + 0x24], 7
xor dword [esp + 0x24], 0x1567b78
mov dword [esp + 0x1c], 0x48fcc0
mov eax, dword [esp + 0x1c]
push ebx
push ebp
push esi
push edi
push 0x27
pop esi
div esi
push 0x59
mov dword [esp + 0x30], eax
xor edx, edx
mov eax, dword [esp + 0x30]
pop esi
div esi
push 0x51
mov dword [esp + 0x30], eax
xor edx, edx
xor dword [esp + 0x30], 0x8a29f
mov dword [esp + 0x24], 0x9f0e00
add dword [esp + 0x24], 0x181e
or dword [esp + 0x24], 0x2d269d53
xor dword [esp + 0x24], 0x2db3f9e4
mov dword [esp + 0x64], 0x60cb7b
mov eax, dword [esp + 0x64]
pop esi
div esi
mov dword [esp + 0x60], eax
xor dword [esp + 0x60], 0x22fda
mov dword [esp + 0x70], 0x353984
add dword [esp + 0x70], 0xffff6468
xor dword [esp + 0x70], 0x3294d5
mov dword [esp + 0x58], 0x14444e
shl dword [esp + 0x58], 3
xor dword [esp + 0x58], 0xa42c8d
mov dword [esp + 0x3c], 0x7026ee
xor dword [esp + 0x3c], 0x792ea2f3
xor dword [esp + 0x3c], 0x82bfeb0
xor dword [esp + 0x3c], 0x7172a3e9
mov dword [esp + 0x4c], 0xb5a5bd
shr dword [esp + 0x4c], 2
xor dword [esp + 0x4c], 0x2e4818
mov dword [esp + 0x10], 0xa2cbab
shl dword [esp + 0x10], 6
add dword [esp + 0x10], 0xffff08c4
add dword [esp + 0x10], 0xffff72a6
xor dword [esp + 0x10], 0x28b00f97
mov dword [esp + 0x48], 0x178642
xor dword [esp + 0x48], 0xa7f28ef6
xor dword [esp + 0x48], 0xa7e57d32
mov dword [esp + 0x24], 0x1c1a6a
shl dword [esp + 0x24], 9
add dword [esp + 0x24], 0xf1d1
xor dword [esp + 0x24], 0x38306aa9
mov dword [esp + 0x7c], 0x863fd9
add dword [esp + 0x7c], 0xd93f
xor dword [esp + 0x7c], 0x89939f
mov dword [esp + 0x1c], 0x78b577
add dword [esp + 0x1c], 0xffff5571
shr dword [esp + 0x1c], 6
add dword [esp + 0x1c], 0xa71d
xor dword [esp + 0x1c], 0x36b74
mov dword [esp + 0x54], 0x2ab8fa
shr dword [esp + 0x54], 4
xor dword [esp + 0x54], 0x819d3
mov dword [esp + 0x14], 0x3ebee2
add dword [esp + 0x14], 0xffff9e0b
imul eax, dword [esp + 0x14], 0x74
mov dword [esp + 0x14], eax
xor dword [esp + 0x14], 0xfcb6bf6f
xor dword [esp + 0x14], 0xe0f86788
mov dword [esp + 0x18], 0xfb2228
add dword [esp + 0x18], 0x6163
xor edx, edx
shr dword [esp + 0x18], 0xd
mov edi, 0xf510b0
add dword [esp + 0x18], 0xfffff65f
mov ebx, 0x1bfe984
xor dword [esp + 0x18], 0xfffe25ad
mov ebp, 0x9d578fc
mov dword [esp + 0x68], 0x77bc21
imul eax, dword [esp + 0x68], 0x28
push 0x66
pop esi
push 0x22
mov dword [esp + 0x6c], eax
xor dword [esp + 0x6c], 0x12bf1d10
mov dword [esp + 0x7c], 0xd6a1be
shl dword [esp + 0x7c], 0xd
xor dword [esp + 0x7c], 0xd431fd34
mov dword [esp + 0x54], 0xa7ceaf
or dword [esp + 0x54], 0x23dbe2cf
xor dword [esp + 0x54], 0x23fcd478
mov dword [esp + 0x48], 0xffafd8
add dword [esp + 0x48], 0xffff09ef
xor dword [esp + 0x48], 0xf1f635
mov dword [esp + 0x2c], 0x1dcfcb
mov eax, dword [esp + 0x2c]
div esi
xor edx, edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
pop esi
div esi
mov dword [esp + 0x28], eax
xor dword [esp + 0x28], 0x4722e
mov dword [esp + 0x64], 0xfb71f
add dword [esp + 0x64], 0x39c6
xor dword [esp + 0x64], 0xb98bc
mov dword [esp + 0x5c], 0xc00f6d
imul eax, dword [esp + 0x5c], 6
mov dword [esp + 0x5c], eax
xor dword [esp + 0x5c], 0x48b4c90
mov dword [esp + 0x40], 0x246476
add dword [esp + 0x40], 0x2ca
xor dword [esp + 0x40], 0x93a77155
xor dword [esp + 0x40], 0x9381e107
mov dword [esp + 0x74], 0xb5a8cb
add dword [esp + 0x74], 0xffffd274
xor dword [esp + 0x74], 0xb4b2cd
mov dword [esp + 0x6c], 0xc9ba14
add dword [esp + 0x6c], 0x6ca0
xor dword [esp + 0x6c], 0xcf3cf6
mov dword [esp + 0x38], 0x73055c
or dword [esp + 0x38], 0xff7fbfc0
xor dword [esp + 0x38], 0xff7ce535
cmp ecx, edi
je 0x3a9c63
cmp ecx, ebx
je 0x3a9c58
cmp ecx, 0x4ccfeca
je 0x3a9c12
cmp ecx, 0x4e0b416
je 0x3a9bff
cmp ecx, 0x8347710
je 0x3a9ce2
cmp ecx, ebp
jne 0x3a9cd4
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x34]
call fcn.003ac0fc
mov ecx, edi
jmp 0x3a9bba
mov eax, dword [0x3c4208]
mov ecx, ebx
cmp dword [eax + 0x420], 0
cmovne ecx, ebp
jmp 0x3a9bba
mov edx, dword [esp + 0x68]
lea eax, [esp + 0x288]
mov ecx, dword [esp + 0x18]
push eax
call fcn.003ae499
lea eax, [esp + 0x84]
push eax
lea eax, [esp + 0x290]
push eax
push dword [esp + 0x50]
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x88]
call fcn.003c1d0e
add esp, 0x10
mov ecx, 0x8347710
jmp 0x3a9bba
mov eax, dword [esp + 0x20]
call fcn.003a9d33
jmp 0x3a9bfb
push dword [esp + 0x3c]
mov ecx, 0x3a1200
push dword [esp + 0x5c]
push dword [esp + 0x78]
mov edx, dword [esp + 0x6c]
call fcn.003a57b4
add esp, 0xc
mov esi, eax
lea eax, [esp + 0x80]
push dword [0x3c4208]
push ecx
push dword [esp + 0x84]
push esi
push eax
push dword [esp + 0x38]
push dword [esp + 0x60]
push dword [esp + 0x2c]
mov ecx, dword [0x3c4208]
mov edx, dword [esp + 0x6c]
lea ecx, [ecx + 0x210]
call fcn.003b7f4a
push dword [esp + 0x34]
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x40]
push esi
call fcn.003ac5d7
add esp, 0x28
mov ecx, 0x4ccfeca
cmp ecx, 0x76a5c32
jne 0x3a9bba
jmp 0x3a9d28
push dword [esp + 0x5c]
mov edx, dword [esp + 0x68]
lea eax, [esp + 0x84]
mov ecx, dword [esp + 0x2c]
push eax
call fcn.003b0bde
mov ecx, dword [esp + 0x38]
xor edx, edx
mov word [eax + ecx*2], dx
lea eax, [esp + 0x88]
push eax
push dword [esp + 0x44]
push dword [esp + 0x7c]
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x54]
call fcn.003b02cf
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x480
ret