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

Disassembly:
sub esp, 0x69c
mov dword [esp + 0x64], 0x54223b
xor edx, edx
add dword [esp + 0x64], 0xffff20d9
shl dword [esp + 0x64], 0xd
xor dword [esp + 0x64], 0x68628000
mov dword [esp + 0x38], 0x951192
xor dword [esp + 0x38], 0xe4591946
imul eax, dword [esp + 0x38], 0x7d
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x48], eax
mov edi, ecx
xor dword [esp + 0x48], 0xb7a04f84
mov esi, 0x8db4d32
mov dword [esp + 0x80], 0x89db32
mov eax, dword [esp + 0x80]
push 0x54
pop ecx
div ecx
push 0x3f
mov dword [esp + 0x84], eax
xor edx, edx
xor dword [esp + 0x84], 0x2efec
mov dword [esp + 0x5c], 0x60f63e
mov eax, dword [esp + 0x5c]
pop ecx
div ecx
push 0x43
mov dword [esp + 0x5c], eax
xor edx, edx
shr dword [esp + 0x5c], 6
xor dword [esp + 0x5c], 0xdc88a
mov dword [esp + 0x7c], 0xc7f499
shl dword [esp + 0x7c], 0xe
xor dword [esp + 0x7c], 0xfd2fba11
mov dword [esp + 0x54], 0xd656e4
or dword [esp + 0x54], 0xc7a22b2a
add dword [esp + 0x54], 0xffffefe2
xor dword [esp + 0x54], 0xc7f6578e
mov dword [esp + 0x70], 0xe6cf89
or dword [esp + 0x70], 0x87e0b820
mov eax, dword [esp + 0x70]
pop ebx
div ebx
push 0x6b
mov dword [esp + 0x70], eax
xor edx, edx
xor dword [esp + 0x70], 0x2070dcf
mov dword [esp + 0x18], 0x58c9f4
imul eax, dword [esp + 0x18], 0x4e
pop ecx
mov dword [esp + 0x14], eax
add dword [esp + 0x14], 0xf6c1
xor dword [esp + 0x14], 0xfaf08b9c
xor dword [esp + 0x14], 0xe1f64896
mov dword [esp + 0x3c], 0xfd8d8
shl dword [esp + 0x3c], 0xc
add dword [esp + 0x3c], 0xffff587b
shr dword [esp + 0x3c], 1
xor dword [esp + 0x3c], 0x7ec2a2f3
mov dword [esp + 0x8c], 0xad305f
shl dword [esp + 0x8c], 0xc
xor dword [esp + 0x8c], 0xd309e005
mov dword [esp + 0x1c], 0x4fc7b6
shl dword [esp + 0x1c], 0xe
shl dword [esp + 0x1c], 0xe
add dword [esp + 0x1c], 0xffff2ae5
xor dword [esp + 0x1c], 0x5ffd2033
mov dword [esp + 0x2c], 0x6918d4
xor dword [esp + 0x2c], 0x94992ac7
add dword [esp + 0x2c], 0xff7a
imul eax, dword [esp + 0x2c], 0x44
mov dword [esp + 0x2c], eax
xor dword [esp + 0x2c], 0x901af4d1
mov dword [esp + 0x68], 0x5f933e
add dword [esp + 0x68], 0xffffba62
mov eax, dword [esp + 0x68]
div ecx
mov dword [esp + 0x68], eax
xor dword [esp + 0x68], 0xc4e27
xor edx, edx
mov dword [esp + 0x44], 0x3d3793
mov eax, dword [esp + 0x44]
push 0x52
pop ecx
div ecx
xor edx, edx
mov dword [esp + 0x44], eax
shr dword [esp + 0x44], 0xf
xor dword [esp + 0x44], 0x707b4
mov dword [esp + 0x34], 0xcbfe6d
shr dword [esp + 0x34], 6
shr dword [esp + 0x34], 0xe
shl dword [esp + 0x34], 0xb
xor dword [esp + 0x34], 0x79401
mov dword [esp + 0x24], 0xb5b9c5
add dword [esp + 0x24], 0xffff1916
mov eax, dword [esp + 0x24]
push 0x6d
pop ecx
div ecx
xor edx, edx
mov dword [esp + 0x24], eax
add dword [esp + 0x24], 0xd331
xor dword [esp + 0x24], 0xc40c2
mov dword [esp + 0x54], 0x47e096
shr dword [esp + 0x54], 6
xor dword [esp + 0x54], 0x85dd1da1
xor dword [esp + 0x54], 0x85d20b68
mov dword [esp + 0x70], 0xc5a058
xor dword [esp + 0x70], 0x12068749
shr dword [esp + 0x70], 0xf
xor dword [esp + 0x70], 0x24404
mov dword [esp + 0x10], 0x81e036
or dword [esp + 0x10], 0xe95a0602
add dword [esp + 0x10], 0xffff703f
shr dword [esp + 0x10], 0xd
xor dword [esp + 0x10], 0x41281
mov dword [esp + 0x88], 0xe00009
imul eax, dword [esp + 0x88], 0x79
push 0x5d
pop ecx
mov dword [esp + 0x88], eax
xor dword [esp + 0x88], 0x69ee7fb3
mov dword [esp + 0x60], 0xb9ca07
or dword [esp + 0x60], 0xf5eeb77b
xor dword [esp + 0x60], 0xf5f5a2ba
mov dword [esp + 0x90], 0x72ecf2
add dword [esp + 0x90], 0xffff3fd0
xor dword [esp + 0x90], 0x78ca44
mov dword [esp + 0x5c], 0x777066
or dword [esp + 0x5c], 0x3ad7a2e
mov eax, dword [esp + 0x5c]
div ebx
xor edx, edx
mov dword [esp + 0x5c], eax
xor dword [esp + 0x5c], 0x9207e
mov dword [esp + 0x18], 0x553ecb
shr dword [esp + 0x18], 5
mov eax, dword [esp + 0x18]
div ecx
mov dword [esp + 0x18], eax
shr dword [esp + 0x18], 9
xor dword [esp + 0x18], 0x5ee0c
mov dword [esp + 0x28], 0xde0347
shr dword [esp + 0x28], 0xb
or dword [esp + 0x28], 0xaf7dc97f
xor dword [esp + 0x28], 0xaf7ed29b
mov dword [esp + 0x84], 0x3d3240
or dword [esp + 0x84], 0x6a853f0
xor dword [esp + 0x84], 0x6b88832
mov dword [esp + 0x20], 0xb81ae3
add dword [esp + 0x20], 0xffff0050
shr dword [esp + 0x20], 0xa
imul eax, dword [esp + 0x20], 0x72
mov dword [esp + 0x20], eax
xor dword [esp + 0x20], 0x16335c
mov dword [esp + 0x7c], 0x2bfb4c
imul eax, dword [esp + 0x7c], 0x3c
mov dword [esp + 0x7c], eax
xor dword [esp + 0x7c], 0xa4cbf0d
xor edx, edx
mov dword [esp + 0x4c], 0xcbd6
mov ebx, 0xe26f7e5
or dword [esp + 0x4c], 0xb0a819a0
mov ebp, 0xffacc8e
shr dword [esp + 0x4c], 3
xor dword [esp + 0x4c], 0x16199620
mov dword [esp + 0x40], 0x9db4aa
mov eax, dword [esp + 0x40]
push 0x24
pop ecx
div ecx
push 0x73
mov dword [esp + 0x44], eax
xor edx, edx
shl dword [esp + 0x44], 1
shl dword [esp + 0x44], 0xa
xor dword [esp + 0x44], 0x2307e993
mov dword [esp + 0x3c], 0xc7c890
or dword [esp + 0x3c], 0xb8b5086a
xor dword [esp + 0x3c], 0xccc5c34c
or dword [esp + 0x3c], 0x35dab112
xor dword [esp + 0x3c], 0x75fc2f4c
mov dword [esp + 0x68], 0x2338f1
shl dword [esp + 0x68], 9
imul eax, dword [esp + 0x68], 0xd
pop ecx
mov dword [esp + 0x64], eax
xor dword [esp + 0x64], 0x93c1e6b0
mov dword [esp + 0x30], 0xf269a1
imul eax, dword [esp + 0x30], 0x54
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
div ecx
mov dword [esp + 0x30], eax
xor dword [esp + 0x30], 0x88b3fe82
xor dword [esp + 0x30], 0x8807d7ff
cmp esi, 0x8db4d32
je 0x3c1a5a
cmp esi, ebx
je 0x3c1950
cmp esi, ebp
jne 0x3c1a5c
push dword [esp + 0x30]
xor eax, eax
lea edx, [esp + 0x2a0]
push dword [esp + 0x68]
push dword [esp + 0x40]
push eax
push eax
push dword [esp + 0x54]
push eax
push dword [esp + 0x64]
mov ecx, dword [esp + 0x6c]
call fcn.003b6ff0
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x69c
ret
push dword [esp + 0x78]
lea eax, [esp + 0x98]
push dword [esp + 0x5c]
mov edx, dword [esp + 0x88]
push eax
call fcn.003aa174
push dword [esp + 0x20]
mov edx, dword [esp + 0x7c]
lea eax, [esp + 0xa4]
mov ecx, dword [esp + 0x60]
push eax
call fcn.003b0bde
mov ecx, dword [esp + 0x88]
xor edx, edx
push dword [esp + 0x40]
mov word [eax + ecx*2], dx
lea eax, [esp + 0x4bc]
push eax
push dword [esp + 0x38]
mov edx, dword [esp + 0xac]
mov ecx, dword [esp + 0x5c]
call fcn.003abe00
push dword [esp + 0x44]
mov ecx, 0x3a1854
push dword [esp + 0x58]
push dword [esp + 0x6c]
mov edx, dword [esp + 0x94]
call fcn.003a57b4
add esp, 0x2c
mov esi, eax
lea eax, [esp + 0x94]
push eax
push ecx
push dword [esp + 0x68]
lea eax, [esp + 0x2a8]
push esi
push eax
push dword [esp + 0x9c]
lea ecx, [esp + 0x4bc]
push dword [esp + 0x28]
push dword [esp + 0x8c]
mov edx, dword [esp + 0x74]
call fcn.003b7f4a
push dword [esp + 0x38]
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0xb4]
push esi
call fcn.003ac5d7
push edi
push dword [esp + 0xa8]
lea eax, [esp + 0x2cc]
push eax
push dword [esp + 0x54]
mov edx, dword [esp + 0xbc]
mov ecx, dword [esp + 0x60]
call fcn.003aa780
add esp, 0x38
test eax, eax
je 0x3c1945
mov esi, ebp
jmp 0x3c1901
mov esi, ebx
cmp esi, 0x1903836
jne 0x3c1901
jmp 0x3c1945