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

Disassembly:
sub esp, 0x6b0
push ebx
push ebp
push esi
push edi
push dword [esp + 0x6cc]
xor edi, edi
push dword [esp + 0x6cc]
push dword [esp + 0x6cc]
push edx
push edi
call fcn.00f44535
mov dword [esp + 0xac], 0xa3cd28
add esp, 0x14
mov dword [esp + 0x9c], 0xa5996c
xor edx, edx
mov dword [esp + 0xa0], edi
mov ecx, 0x22209e2
mov dword [esp + 0xa4], edi
mov dword [esp + 0x64], 0x2e76e2
add dword [esp + 0x64], 0xffffb946
shl dword [esp + 0x64], 0xa
xor dword [esp + 0x64], 0xb8c0a029
mov dword [esp + 0x2c], 0x9a500b
shr dword [esp + 0x2c], 6
shl dword [esp + 0x2c], 3
mov eax, dword [esp + 0x2c]
push 0x1e
pop esi
div esi
push 0xe
mov dword [esp + 0x30], eax
xor edx, edx
xor dword [esp + 0x30], 0x39a75
mov dword [esp + 0x80], 0xe86002
imul eax, dword [esp + 0x80], 0x7a
pop esi
push 0x14
mov dword [esp + 0x80], eax
xor dword [esp + 0x80], 0x6eb6de0f
mov dword [esp + 0x94], 0x543d71
or dword [esp + 0x94], 0x2f7a828b
xor dword [esp + 0x94], 0x2f7ebe8a
mov dword [esp + 0x28], 0x827cac
add dword [esp + 0x28], 0xffff381a
shr dword [esp + 0x28], 1
add dword [esp + 0x28], 0x5fb
xor dword [esp + 0x28], 0x439b72
mov dword [esp + 0x60], 0xd86e40
imul eax, dword [esp + 0x60], 0x4b
mov dword [esp + 0x60], eax
xor dword [esp + 0x60], 0x66dac8d7
xor dword [esp + 0x60], 0x59bf8dc7
mov dword [esp + 0x44], 0xe22f5c
mov eax, dword [esp + 0x44]
div esi
xor edx, edx
mov dword [esp + 0x44], eax
add dword [esp + 0x44], 0xadd8
xor dword [esp + 0x44], 0x164e4e
mov dword [esp + 0x5c], 0x135218
shl dword [esp + 0x5c], 2
mov eax, dword [esp + 0x5c]
pop esi
div esi
push 0x44
mov dword [esp + 0x5c], eax
xor edx, edx
xor dword [esp + 0x5c], 0x57191
mov dword [esp + 0x20], 0xb55a6a
mov eax, dword [esp + 0x20]
pop esi
div esi
mov dword [esp + 0x1c], eax
shr dword [esp + 0x1c], 1
shl dword [esp + 0x1c], 0xc
xor dword [esp + 0x1c], 0x155a2aa4
mov dword [esp + 0x14], 0x82b365
imul eax, dword [esp + 0x14], 0x5e
mov dword [esp + 0x14], eax
add dword [esp + 0x14], 0xffff2551
xor dword [esp + 0x14], 0x76fa7d1a
xor dword [esp + 0x14], 0x590ec67d
xor edx, edx
mov dword [esp + 0x88], 0xfb5dfd
add dword [esp + 0x88], 0x4396
xor dword [esp + 0x88], 0xf45a63
mov dword [esp + 0x60], 0xe4118e
xor dword [esp + 0x60], 0xd054ef20
xor dword [esp + 0x60], 0xca458aaf
xor dword [esp + 0x60], 0x1afed08f
mov dword [esp + 0x10], 0xdb34f
or dword [esp + 0x10], 0xaa75e790
imul eax, dword [esp + 0x10], 0x3c
push 0x1c
pop esi
push 0x16
mov dword [esp + 0x14], eax
xor dword [esp + 0x14], 0x356fc389
xor dword [esp + 0x14], 0xc0efab01
mov dword [esp + 0x58], 0x770326
mov eax, dword [esp + 0x58]
div esi
xor edx, edx
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x58]
pop esi
div esi
push 0x51
mov dword [esp + 0x58], eax
xor edx, edx
xor dword [esp + 0x58], 0x939b7
mov dword [esp + 0x98], 0xc2fbd4
add dword [esp + 0x98], 0x7793
xor dword [esp + 0x98], 0xccae87
mov dword [esp + 0x50], 0x78bfb0
or dword [esp + 0x50], 0xb0055113
xor dword [esp + 0x50], 0x9d135d83
xor dword [esp + 0x50], 0x2d6656e1
mov dword [esp + 0x2c], 0x248893
mov eax, dword [esp + 0x2c]
pop esi
div esi
push 0x3a
mov dword [esp + 0x2c], eax
xor edx, edx
shr dword [esp + 0x2c], 9
xor dword [esp + 0x2c], 0x3efac27c
xor dword [esp + 0x2c], 0x3efb555a
mov dword [esp + 0x7c], 0xc6489b
shl dword [esp + 0x7c], 0x10
xor dword [esp + 0x7c], 0x4890984c
mov dword [esp + 0x54], 0x2f263e
shr dword [esp + 0x54], 0xc
xor dword [esp + 0x54], 0x37d09e5
xor dword [esp + 0x54], 0x37f29bd
mov dword [esp + 0x90], 0xc337d0
shr dword [esp + 0x90], 9
xor dword [esp + 0x90], 0x34d71
mov dword [esp + 0x3c], 0xb2671e
shl dword [esp + 0x3c], 2
xor dword [esp + 0x3c], 0x71c29df9
or dword [esp + 0x3c], 0x53e0f95
xor dword [esp + 0x3c], 0x77335a96
mov dword [esp + 0x78], 0x4a816f
add dword [esp + 0x78], 0xffff3cd1
add dword [esp + 0x78], 0xbf18
xor dword [esp + 0x78], 0x4ea1c5
mov dword [esp + 0x4c], 0x2d230c
mov eax, dword [esp + 0x4c]
pop esi
div esi
push 0x5c
mov dword [esp + 0x4c], eax
xor edx, edx
mov eax, dword [esp + 0x4c]
pop esi
div esi
mov dword [esp + 0x48], eax
xor dword [esp + 0x48], 0x72212
mov dword [esp + 0x68], 0x4ae3bd
xor dword [esp + 0x68], 0x992a08b9
shl dword [esp + 0x68], 0xa
xor dword [esp + 0x68], 0x83a6fde7
xor edx, edx
mov dword [esp + 0x18], 0x636536
mov ebp, 0x4620413
shl dword [esp + 0x18], 4
mov ebx, 0x8da9d6e
shr dword [esp + 0x18], 5
mov eax, dword [esp + 0x18]
push 0x27
pop esi
div esi
xor edx, edx
mov dword [esp + 0x18], eax
xor dword [esp + 0x18], 0x3732e
mov dword [esp + 0x80], 0xdb43a4
xor dword [esp + 0x80], 0x5025d68e
xor dword [esp + 0x80], 0x50f0e159
mov dword [esp + 0x70], 0x23d8d
shr dword [esp + 0x70], 1
shl dword [esp + 0x70], 0xd
xor dword [esp + 0x70], 0x23dfbb47
mov dword [esp + 0x30], 0x8bf7f2
or dword [esp + 0x30], 0x73e3a649
shl dword [esp + 0x30], 5
shl dword [esp + 0x30], 5
xor dword [esp + 0x30], 0xafd4d423
mov dword [esp + 0x20], 0x9bdaf0
shl dword [esp + 0x20], 0xa
add dword [esp + 0x20], 0xe703
add dword [esp + 0x20], 0xffffb24f
xor dword [esp + 0x20], 0x6f6f5346
mov dword [esp + 0x3c], 0x31c90e
xor dword [esp + 0x3c], 0x91beb060
or dword [esp + 0x3c], 0x45525c51
imul eax, dword [esp + 0x3c], 0x47
push 0x39
pop esi
push 0x35
mov dword [esp + 0x40], eax
xor dword [esp + 0x40], 0x50f4e242
mov dword [esp + 0x48], 0x59ec4e
shl dword [esp + 0x48], 8
add dword [esp + 0x48], 0xb6fe
xor dword [esp + 0x48], 0x59ed5ff4
mov dword [esp + 0x88], 0x43d11d
mov eax, dword [esp + 0x88]
div esi
xor edx, edx
mov dword [esp + 0x88], eax
xor dword [esp + 0x88], 0xab420
mov dword [esp + 0x38], 0x607647
mov eax, dword [esp + 0x38]
pop esi
div esi
xor edx, edx
mov dword [esp + 0x34], eax
imul eax, dword [esp + 0x34], 0x58
mov dword [esp + 0x34], eax
imul eax, dword [esp + 0x34], 0x2d
mov dword [esp + 0x34], eax
xor dword [esp + 0x34], 0x1c2ac909
mov dword [esp + 0x6c], 0xcd891f
add dword [esp + 0x6c], 0xffffe38e
mov eax, dword [esp + 0x6c]
div esi
mov dword [esp + 0x6c], eax
xor dword [esp + 0x6c], 0x437b4
cmp ecx, 0x22209e2
je 0xf5d7ef
cmp ecx, ebp
je 0xf5d75f
cmp ecx, 0x6d59194
je 0xf5d6bb
cmp ecx, ebx
je 0xf5d826
cmp ecx, 0x2841031
jne 0xf5d68a
jmp 0xf5d85a
push dword [esp + 0x78]
mov ecx, dword [esp + 0x2c]
mov edx, 0xf413ac
call fcn.00f4f672
pop ecx
lea ecx, [esp + 0xa8]
mov esi, eax
call fcn.00f5c4cc
push edi
lea eax, [esp + 0x4bc]
push eax
lea eax, [esp + 0xb0]
push eax
push esi
push dword [esp + 0x90]
push dword [esp + 0x2c]
push dword [esp + 0x80]
mov eax, dword [0xf6321c]
add eax, 0x24
push eax
push dword [esp + 0x68]
mov eax, dword [0xf6321c]
add eax, 0x22c
push eax
push dword [esp + 0x9c]
lea eax, [esp + 0x2dc]
push eax
push ecx
push dword [esp + 0x6c]
mov edx, dword [esp + 0xc4]
mov ecx, dword [esp + 0x88]
call fcn.00f4474d
push dword [esp + 0x58]
mov ecx, esi
push dword [esp + 0x6c]
mov edx, dword [esp + 0xb0]
call fcn.00f4cea2
add esp, 0x40
mov ecx, ebx
jmp 0xf5d68a
push dword [esp + 0x58]
mov ecx, dword [esp + 0x44]
mov edx, 0xf4127c
call fcn.00f4f672
lea ecx, [esp + 0xac]
mov esi, eax
call fcn.00f5c4cc
push dword [esp + 0x14]
lea eax, [esp + 0x4c0]
mov ecx, 0x104
push esi
push eax
lea eax, [esp + 0xb8]
push eax
lea eax, [esp + 0x2c4]
push eax
push dword [esp + 0x78]
mov eax, dword [0xf6321c]
add eax, 0x24
push eax
push dword [esp + 0xa8]
push dword [esp + 0x38]
push dword [esp + 0x44]
mov edx, dword [0xf6321c]
lea edx, [edx + 0x22c]
call fcn.00f6006a
push dword [esp + 0x78]
mov ecx, esi
push dword [esp + 0xc4]
mov edx, dword [esp + 0x88]
call fcn.00f4cea2
add esp, 0x34
jmp 0xf5d758
push dword [esp + 0x5c]
lea eax, [esp + 0x2b4]
push dword [esp + 0x28]
push ecx
push dword [esp + 0x9c]
push dword [esp + 0x8c]
push dword [esp + 0x40]
mov edx, dword [esp + 0x7c]
push ecx
push eax
call fcn.00f56150
add esp, 0x20
mov ecx, ebp
jmp 0xf5d68a
push ecx
push dword [esp + 0x70]
lea eax, [esp + 0x4c0]
xor ecx, ecx
push edi
push dword [esp + 0x40]
push dword [esp + 0x94]
push dword [esp + 0x58]
mov edx, dword [esp + 0x54]
push edi
push eax
call fcn.00f5184d
xor ecx, ecx
add esp, 0x20
inc ecx
test eax, eax
cmovne edi, ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6b0
ret