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

Disassembly:
sub esp, 0xb4
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0xd4]
mov esi, ecx
push edi
push dword [esp + 0xd4]
push dword [esp + 0xd4]
push dword [esp + 0xd4]
push edx
push esi
call fcn.10008002
mov dword [esp + 0xcc], 0x98cb51
xor ebp, ebp
mov dword [esp + 0xd0], 0x3c049
add esp, 0x18
mov dword [esp + 0xbc], ebp
xor edx, edx
mov dword [esp + 0xc0], ebp
mov ecx, 0xd20c825
mov dword [esp + 0x7c], 0xd4fd08
add dword [esp + 0x7c], 0xffff3fe2
xor dword [esp + 0x7c], 0xd43cea
mov dword [esp + 0x60], 0xb43979
add dword [esp + 0x60], 0xdd7b
add dword [esp + 0x60], 0x7f51
xor dword [esp + 0x60], 0xbdaefa
mov dword [esp + 0x30], 0x688e71
shr dword [esp + 0x30], 0xb
shr dword [esp + 0x30], 4
shl dword [esp + 0x30], 5
xor dword [esp + 0x30], 0xf5470
mov dword [esp + 0x28], 0xa25f88
shl dword [esp + 0x28], 4
or dword [esp + 0x28], 0xfed7c077
mov eax, dword [esp + 0x28]
push 0x78
pop ebx
div ebx
push 3
mov dword [esp + 0x2c], eax
xor edx, edx
xor dword [esp + 0x2c], 0x21a57da
mov dword [esp + 0x5c], 0x707e55
shl dword [esp + 0x5c], 3
add dword [esp + 0x5c], 0xffffca5a
xor dword [esp + 0x5c], 0x3898e17
mov dword [esp + 0x24], 0x2323f6
mov eax, dword [esp + 0x24]
pop ebx
div ebx
push 0x1f
mov dword [esp + 0x24], eax
xor edx, edx
or dword [esp + 0x24], 0x794a01bb
add dword [esp + 0x24], 0x7fc3
xor dword [esp + 0x24], 0x7949cce9
mov dword [esp + 0x54], 0x10d9b5
shl dword [esp + 0x54], 1
add dword [esp + 0x54], 0x8e77
xor dword [esp + 0x54], 0x2e5eeb
mov dword [esp + 0x88], 0x61f10b
mov eax, dword [esp + 0x88]
pop ebx
div ebx
mov dword [esp + 0x84], eax
xor dword [esp + 0x84], 0xe408b
mov dword [esp + 0x4c], 0xcdc1fe
add dword [esp + 0x4c], 0xffff35b0
shr dword [esp + 0x4c], 5
xor dword [esp + 0x4c], 0x161d2
mov dword [esp + 0x18], 0xcff9d7
imul eax, dword [esp + 0x18], 0x44
mov dword [esp + 0x18], eax
add dword [esp + 0x18], 0x29e8
shr dword [esp + 0x18], 2
xor dword [esp + 0x18], 0xdcdd6e0
mov dword [esp + 0x64], 0x30b6c3
or dword [esp + 0x64], 0x9550d1e6
imul eax, dword [esp + 0x64], 0x46
mov dword [esp + 0x64], eax
xor edx, edx
xor dword [esp + 0x64], 0xdce37511
mov dword [esp + 0x1c], 0x41358f
shl dword [esp + 0x1c], 8
imul eax, dword [esp + 0x1c], 0x3f
push 0x7e
pop ebx
push 0x39
mov dword [esp + 0x20], eax
or dword [esp + 0x20], 0xbe8ff062
xor dword [esp + 0x20], 0xbeaa9942
mov dword [esp + 0x38], 0xb99b38
mov eax, dword [esp + 0x38]
div ebx
xor edx, edx
mov dword [esp + 0x38], eax
shr dword [esp + 0x38], 7
mov eax, dword [esp + 0x38]
pop ebx
div ebx
push 0x43
mov dword [esp + 0x38], eax
xor edx, edx
xor dword [esp + 0x38], 0xdad23
mov dword [esp + 0x18], 0xeda7d3
shr dword [esp + 0x18], 4
mov eax, dword [esp + 0x18]
pop ebx
div ebx
mov dword [esp + 0x14], eax
or dword [esp + 0x14], 0xb383abbb
xor dword [esp + 0x14], 0xb381acb6
mov dword [esp + 0x94], 0x1d02f6
imul eax, dword [esp + 0x94], 0x53
mov dword [esp + 0x94], eax
xor dword [esp + 0x94], 0x9659576
mov dword [esp + 0x48], 0xe3cbc1
imul eax, dword [esp + 0x48], 0x72
mov dword [esp + 0x48], eax
shl dword [esp + 0x48], 0xf
xor dword [esp + 0x48], 0x5dfad653
mov dword [esp + 0x74], 0xefae10
add dword [esp + 0x74], 0xc29a
xor dword [esp + 0x74], 0xfed70e
mov dword [esp + 0x68], 0x45dff5
shl dword [esp + 0x68], 4
or dword [esp + 0x68], 0xd162baeb
xor dword [esp + 0x68], 0xd5785aea
mov dword [esp + 0x6c], 0xdba462
shr dword [esp + 0x6c], 2
shr dword [esp + 0x6c], 2
xor dword [esp + 0x6c], 0xec23a
mov dword [esp + 0x24], 0x3badbb
add dword [esp + 0x24], 0xffff04ab
imul eax, dword [esp + 0x24], 0x5e
mov dword [esp + 0x24], eax
xor dword [esp + 0x24], 0x5b663051
xor dword [esp + 0x24], 0x4ee8a23c
mov dword [esp + 0x2c], 0xf3cebd
or dword [esp + 0x2c], 0xa76b47fd
shl dword [esp + 0x2c], 3
xor dword [esp + 0x2c], 0x3fd1623d
mov dword [esp + 0x78], 0x89d29
imul eax, dword [esp + 0x78], 9
mov dword [esp + 0x78], eax
xor dword [esp + 0x78], 0x4facba
mov dword [esp + 0x88], 0x5b4976
add dword [esp + 0x88], 0xea1e
xor dword [esp + 0x88], 0x560879
mov dword [esp + 0x90], 0x5a6692
or dword [esp + 0x90], 0x37962189
xor dword [esp + 0x90], 0x37d57e68
mov dword [esp + 0x70], 0xa9ec09
add dword [esp + 0x70], 0x203e
add dword [esp + 0x70], 0xffffb76b
xor dword [esp + 0x70], 0xae77e8
mov dword [esp + 0x80], 0x815203
or dword [esp + 0x80], 0xc1a2254d
xor dword [esp + 0x80], 0xc1ac353f
mov dword [esp + 0x5c], 0x891afc
mov eax, dword [esp + 0x5c]
xor edx, edx
push 0x66
pop ebx
div ebx
push 0x44
mov dword [esp + 0x60], eax
xor edx, edx
add dword [esp + 0x60], 0xa24f
xor dword [esp + 0x60], 0x24957
mov dword [esp + 0x40], 0x8c7d48
imul eax, dword [esp + 0x40], 0x2b
pop ebx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
div ebx
mov ebx, 0x9ae9bd9
mov dword [esp + 0x3c], eax
xor dword [esp + 0x3c], 0x5614a5
mov dword [esp + 0x10], 0x49b8e9
add dword [esp + 0x10], 0xcb11
add dword [esp + 0x10], 0x107f
shr dword [esp + 0x10], 0xf
xor dword [esp + 0x10], 0x7bf2b
mov dword [esp + 0x54], 0xcb8072
add dword [esp + 0x54], 0x438b
add dword [esp + 0x54], 0xc93b
xor dword [esp + 0x54], 0xc61165
mov dword [esp + 0x44], 0x2dbaae
or dword [esp + 0x44], 0xaa33a377
imul eax, dword [esp + 0x44], 0x72
mov dword [esp + 0x44], eax
xor dword [esp + 0x44], 0xd0626618
mov dword [esp + 0x38], 0x4079e7
add dword [esp + 0x38], 0xbe65
xor dword [esp + 0x38], 0xdcbbe985
shr dword [esp + 0x38], 6
xor dword [esp + 0x38], 0x37b6a47
mov dword [esp + 0x8c], 0xc18d65
add dword [esp + 0x8c], 0xd572
xor dword [esp + 0x8c], 0xc20e2d
mov dword [esp + 0x40], 0x778d04
add dword [esp + 0x40], 0xffff449b
xor dword [esp + 0x40], 0x73bdd683
xor dword [esp + 0x40], 0x73cf90ea
cmp ecx, ebx
jg 0x10016a58
je 0x10016a2c
cmp ecx, 0x5c49d0
je 0x10016b58
cmp ecx, 0x73af45
je 0x100169f7
cmp ecx, 0x361ae68
je 0x100169cb
cmp ecx, 0x3918d83
je 0x100169ba
cmp ecx, 0x481cc30
jne 0x10016b4a
push dword [esp + 0x14]
lea ecx, [esp + 0x9c]
push dword [esp + 0x38]
push dword [esp + 0x24]
push dword [esp + 0x70]
mov edx, dword [esi]
call fcn.1000e1eb
add esp, 0x10
mov ecx, 0x361ae68
jmp 0x10016950
mov ecx, esi
call fcn.1000d899
mov dword [edi + 4], eax
mov ecx, 0x9dcec49
jmp 0x10016950
push dword [esp + 0x68]
lea ecx, [esp + 0x9c]
push dword [esp + 0x78]
push dword [esp + 0x50]
push dword [esp + 0xa0]
mov edx, dword [esi + 0x10]
call fcn.1000e1eb
add esp, 0x10
mov ecx, ebx
jmp 0x10016950
push dword [esp + 0x80]
lea ecx, [esp + 0x9c]
push dword [esp + 0x74]
push dword [esp + 0x98]
push dword [esp + 0x94]
mov edx, dword [esi + 0x14]
call fcn.1000e1eb
add esp, 0x10
mov ecx, 0xc04225f
jmp 0x10016950
push dword [esp + 0x78]
lea ecx, [esp + 0x9c]
push dword [esp + 0x30]
push dword [esp + 0x2c]
push dword [esp + 0x78]
mov edx, dword [esi + 4]
call fcn.1000e1eb
add esp, 0x10
mov ecx, 0x73af45
jmp 0x10016950
cmp ecx, 0x9dcec49
je 0x10016b23
cmp ecx, 0x9e0876e
je 0x10016afc
cmp ecx, 0xb1f45ee
je 0x10016acb
cmp ecx, 0xc04225f
je 0x10016a9f
cmp ecx, 0xd20c825
jne 0x10016b4a
mov eax, dword [esp + 0x7c]
mov ecx, 0x3918d83
mov dword [edi], ebp
mov dword [edi + 4], eax
jmp 0x10016950
push dword [esp + 0x54]
lea ecx, [esp + 0x9c]
push dword [esp + 0x14]
push dword [esp + 0x44]
push dword [esp + 0x68]
mov edx, dword [esi + 0x30]
call fcn.1000e1eb
add esp, 0x10
mov ecx, 0x5c49d0
jmp 0x10016950
push dword [esp + 0x18]
lea eax, [esi + 0x18]
push eax
lea eax, [esp + 0xa0]
push eax
push dword [esp + 0x58]
mov edx, dword [esp + 0x94]
mov ecx, dword [esp + 0x60]
call fcn.10010824
add esp, 0x10
mov ecx, 0x481cc30
jmp 0x10016950
push dword [esp + 0x20]
mov edx, dword [esp + 0x5c]
lea eax, [esp + 0x9c]
mov ecx, dword [esp + 0x2c]
push edi
push eax
call fcn.1001777f
add esp, 0xc
mov ecx, 0xb1f45ee
jmp 0x10016950
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x60]
mov edx, dword [edi + 4]
push ecx
call fcn.10016f53
mov dword [edi], eax
pop ecx
test eax, eax
je 0x10016b45
mov ecx, 0x9e0876e
jmp 0x10016950
mov ecx, 0xd61d1a6
cmp ecx, 0xd61d1a6
jne 0x10016950
jmp 0x10016b7f
push dword [esp + 0x40]
lea eax, [esi + 0x28]
push eax
lea eax, [esp + 0xa0]
push eax
push dword [esp + 0x98]
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x54]
call fcn.10010824
add esp, 0x10
xor eax, eax
cmp dword [edi], ebp
pop edi
pop esi
pop ebp
setne al
pop ebx
add esp, 0xb4
ret