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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xc8]
cmp eax, dword [ecx + 8]
jbe 0x86b8eb
sub esp, 0x148
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [eax + 0x18]
mov dword [esp + 0x58], ecx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0x200
mov dword [esp + 0x10], 0x200
mov dword [esp + 0x14], 0x200
call fcn.00464ae0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
jne 0x86b8c0
mov eax, dword [esp + 0x58]
mov dword [esp], eax
lea ecx, [0xe90980]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x200
call fcn.00402350
movzx eax, byte [esp + 0xc]
test al, al
je 0x86ad91
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x200
mov dword [esp + 0x10], 0x200
mov dword [esp + 0x14], 0x200
call fcn.00464ae0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
jne 0x86ad66
mov eax, dword [esp + 0x58]
mov dword [esp], eax
lea eax, [0xe90980]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x200
call fcn.00402350
movzx eax, byte [esp + 0xc]
test al, al
je 0x86ad2f
mov eax, dword [0xe7accc]
mov ecx, dword [0xe7acc8]
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], ecx
mov dword [esp + 0x15c], eax
add esp, 0x148
ret
mov eax, dword [0xe7a558]
mov ecx, dword [0xe7a55c]
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], eax
mov dword [esp + 0x15c], ecx
add esp, 0x148
ret
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], ecx
mov dword [esp + 0x15c], eax
add esp, 0x148
ret
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.008680e0
mov eax, dword [esp + 4]
test eax, eax
je 0x86b889
mov dword [esp + 0x40], eax
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
lea eax, [0x9affc0]
mov dword [esp], eax
call fcn.0040af00
mov eax, dword [esp + 4]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x14c]
movzx edx, byte [ecx + 0xb4]
mov byte [eax], dl
lea edx, [esp + 0x64]
mov dword [esp], edx
mov ebx, dword [esp + 0x58]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x64
mov dword [esp + 0xc], 0x200
call fcn.0086ddb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x50]
mov dword [edx + 8], eax
lea edi, [edx + 4]
mov dword [esp + 0x54], edi
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x86b87d
mov dword [edx + 4], ecx
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea edx, [ecx + 0xb5]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x64
mov dword [esp + 0xc], 0x163
call fcn.0086ddb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x10], eax
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x86b86e
mov dword [edx + 0xc], ecx
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea edx, [ecx + 0x94]
mov dword [esp + 4], edx
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0x184
call fcn.0086df90
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x14], eax
mov dword [edx + 0x18], ecx
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea ebx, [ecx + 0x7c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 8
mov dword [esp + 0xc], 0x19c
call fcn.0086df90
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x1c], eax
mov dword [edx + 0x20], ecx
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea ebx, [ecx + 0x84]
mov dword [esp + 4], ebx
mov dword [esp + 8], 8
mov dword [esp + 0xc], 0x194
call fcn.0086df90
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x24], eax
lea eax, [esp + 0x64]
mov dword [esp], eax
mov edx, dword [esp + 0x14c]
lea ebx, [edx + 0x8c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 8
mov dword [esp + 0xc], 0x18c
call fcn.0086df90
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x28], eax
lea eax, [esp + 0x64]
mov dword [esp], eax
mov edx, dword [esp + 0x14c]
lea ebx, [edx + 0xa0]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0x178
call fcn.0086df90
mov eax, dword [esp + 0x10]
add eax, 0x7791f700
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x28], ecx
lea edi, [esp + 0x94]
mov edx, eax
mov eax, 0
call fcn.00456d7b
lea edi, [esp + 0x134]
call fcn.00456d7b
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], edx
mov ecx, dword [esp + 0x28]
adc ecx, 0xe
mov dword [esp + 0x140], ecx
mov ecx, dword [0xe70e90]
mov dword [esp + 0x144], ecx
lea edi, [esp + 0x94]
lea esi, [esp + 0x134]
call fcn.0045725e
mov ecx, dword [esp + 0x50]
lea edi, [ecx + 0x3c]
mov edx, dword [0xe8ff30]
test edx, edx
jne 0x86b84a
lea esi, [esp + 0x94]
call fcn.0045725e
mov ecx, dword [esp + 0x40]
cmp ecx, 1
jg 0x86b060
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x150], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x154], edx
mov dword [esp + 0x158], eax
mov dword [esp + 0x15c], ecx
add esp, 0x148
ret
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea edx, [ecx + 0x121]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x20
mov dword [esp + 0xc], 0xf7
call fcn.0086ddb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x30], eax
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x86b83b
mov dword [edx + 0x2c], ecx
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea edx, [ecx + 0x141]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x20
mov dword [esp + 0xc], 0xd7
call fcn.0086ddb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x38], eax
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x86b82c
mov dword [edx + 0x34], ecx
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea edx, [ecx + 0x161]
mov dword [esp + 4], edx
mov dword [esp + 8], 8
mov dword [esp + 0xc], 0xb7
call fcn.0086df90
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x78], ecx
mov dword [edx + 0x7c], eax
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea ebx, [ecx + 0x169]
mov dword [esp + 4], ebx
mov dword [esp + 8], 8
mov dword [esp + 0xc], 0xaf
call fcn.0086df90
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x80], eax
mov dword [edx + 0x84], ecx
mov eax, dword [esp + 0x40]
test eax, 6
jne 0x86b733
test eax, 0x10
jne 0x86b52b
test eax, 8
je 0x86b522
mov dword [edx + 0x90], eax
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov eax, dword [esp + 0x14c]
movzx ecx, byte [eax + 0x171]
lea ebx, [eax + 0x171]
mov dword [esp + 0x44], ebx
test cl, cl
jne 0x86b44c
movzx ecx, byte [eax + 0x17d]
test cl, cl
jne 0x86b36c
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x86b363
lea edi, [esp + 0xd0]
lea esi, [0xaa3250]
call fcn.0045725e
lea edi, [edx + 0x50]
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x86b33a
lea esi, [0xaa3230]
call fcn.0045725e
lea edi, [edx + 0x64]
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x86b314
lea esi, [esp + 0xd0]
call fcn.0045725e
lea eax, [esp + 0x64]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x9b
mov dword [esp + 0xc], 0xa7
call fcn.0086ddb0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], ecx
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0086dd30
movzx eax, byte [esp + 8]
test al, al
je 0x86b30b
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x50]
mov dword [edx + 0x90], 0
test ecx, ecx
jle 0x86b02d
mov ebx, dword [edx + 4]
mov ebp, dword [edx + 8]
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
lea eax, [0x9ca5d2]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebp
call fcn.004435d0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x50]
mov dword [edx + 8], eax
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x86b2fb
mov dword [edx + 4], ecx
jmp 0x86b02d
mov edi, dword [esp + 0x54]
mov eax, ecx
call fcn.00456ab0
jmp 0x86b02d
xor eax, eax
xor ecx, ecx
jmp 0x86b290
lea eax, [0x9c4f60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xd0]
mov dword [esp + 8], eax
call fcn.00411120
mov ebx, dword [esp + 0x44]
jmp 0x86b23f
lea eax, [0x9c4f60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [0xaa3230]
mov dword [esp + 8], eax
call fcn.00411120
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x44]
jmp 0x86b222
xor ecx, ecx
xor eax, eax
jmp 0x86b29e
lea ecx, [esp + 0x5c]
mov dword [esp], ecx
add eax, 0x17d
mov dword [esp + 4], eax
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0x9b
call fcn.0086df90
mov eax, dword [esp + 0x10]
add eax, 0x7791f700
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2c], ecx
lea edi, [esp + 0xbc]
mov edx, eax
mov eax, 0
call fcn.00456d7b
lea edi, [esp + 0xe4]
call fcn.00456d7b
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], edx
mov eax, dword [esp + 0x2c]
adc eax, 0xe
mov dword [esp + 0xf0], eax
mov eax, dword [0xe70e90]
mov dword [esp + 0xf4], eax
lea edi, [esp + 0xbc]
lea esi, [esp + 0xe4]
call fcn.0045725e
mov eax, dword [esp + 0x50]
lea edi, [eax + 0x64]
mov ecx, dword [0xe8ff30]
test ecx, ecx
jne 0x86b429
lea esi, [esp + 0xbc]
call fcn.0045725e
mov edx, eax
mov ebx, dword [esp + 0x44]
jmp 0x86b1e8
lea eax, [0x9c4f60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xbc]
mov dword [esp + 8], eax
call fcn.00411120
mov eax, dword [esp + 0x50]
jmp 0x86b41e
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0xa7
call fcn.0086df90
mov eax, dword [esp + 0x10]
add eax, 0x7791f700
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x24], ecx
lea edi, [esp + 0x6c]
mov edx, eax
mov eax, 0
call fcn.00456d7b
lea edi, [esp + 0xf8]
call fcn.00456d7b
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], edx
mov ecx, dword [esp + 0x24]
adc ecx, 0xe
mov dword [esp + 0x104], ecx
mov ecx, dword [0xe70e90]
mov dword [esp + 0x108], ecx
lea edi, [esp + 0x6c]
lea esi, [esp + 0xf8]
call fcn.0045725e
mov ecx, dword [esp + 0x50]
lea edi, [ecx + 0x50]
mov edx, dword [0xe8ff30]
test edx, edx
jne 0x86b504
lea esi, [esp + 0x6c]
call fcn.0045725e
mov eax, dword [esp + 0x14c]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x44]
jmp 0x86b1d9
lea eax, [0x9c4f60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x6c]
mov dword [esp + 8], eax
call fcn.00411120
xor eax, eax
jmp 0x86b4f0
xor ecx, ecx
xor eax, eax
jmp 0x86b29e
lea eax, [esp + 0x64]
mov dword [esp], eax
mov ecx, dword [esp + 0x14c]
lea edx, [ecx + 0x171]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x83
mov dword [esp + 0xc], 0xa7
call fcn.0086ddb0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], ecx
lea edx, [esp + 0x64]
mov dword [esp], edx
mov ebx, dword [esp + 0x14c]
lea ebp, [ebx + 0x1f4]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0x24
call fcn.0086df90
mov eax, dword [esp + 0x10]
add eax, 0x7791f700
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], ecx
lea edi, [esp + 0x80]
mov edx, eax
mov eax, 0
call fcn.00456d7b
lea edi, [esp + 0x120]
call fcn.00456d7b
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], edx
mov ecx, dword [esp + 0x34]
adc ecx, 0xe
mov dword [esp + 0x12c], ecx
mov ecx, dword [0xe70e90]
mov dword [esp + 0x130], ecx
lea edi, [esp + 0x80]
lea esi, [esp + 0x120]
call fcn.0045725e
mov ecx, dword [esp + 0x50]
lea edi, [ecx + 0x50]
mov edx, dword [0xe8ff30]
test edx, edx
jne 0x86b711
lea esi, [esp + 0x80]
call fcn.0045725e
lea eax, [esp + 0x64]
mov dword [esp], eax
mov eax, dword [esp + 0x14c]
add eax, 0x200
mov dword [esp + 4], eax
mov dword [esp + 8], 0xc
mov dword [esp + 0xc], 0x18
call fcn.0086df90
mov eax, dword [esp + 0x10]
add eax, 0x7791f700
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
lea edi, [esp + 0xa8]
mov edx, eax
mov eax, 0
call fcn.00456d7b
lea edi, [esp + 0x10c]
call fcn.00456d7b
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], edx
mov eax, dword [esp + 0x30]
adc eax, 0xe
mov dword [esp + 0x118], eax
mov eax, dword [0xe70e90]
mov dword [esp + 0x11c], eax
lea edi, [esp + 0xa8]
lea esi, [esp + 0x10c]
call fcn.0045725e
mov eax, dword [esp + 0x50]
lea edi, [eax + 0x64]
mov ecx, dword [0xe8ff30]
test ecx, ecx
jne 0x86b6ee
lea esi, [esp + 0xa8]
call fcn.0045725e
mov edx, eax
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x4c]
jmp 0x86b29e
lea eax, [0x9c4f60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xa8]
mov dword [esp + 8], eax
call fcn.00411120
mov eax, dword [esp + 0x50]
jmp 0x86b6df
lea eax, [0x9c4f60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x80]
mov dword [esp + 8], eax
call fcn.00411120
jmp 0x86b626
mov dword [edx + 0x90], eax
lea eax, [esp + 0x64]
mov dword [esp], eax
mov eax, dword [esp + 0x14c]
lea ecx, [eax + 0x171]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x9b
mov dword [esp + 0xc], 0xa7
call fcn.0086ddb0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x58]
mov dword [esp], edx
mov dword [esp + 4], 0x200
mov dword [esp + 8], 0x200
lea ebx, [0x9fedac]
mov dword [esp + 0xc], ebx
mov byte [esp + 0x10], 1
call fcn.0046ef80
mov eax, dword [esp + 0x14]
test eax, eax
jl 0x86b826
mov eax, dword [esp + 0x50]
mov dword [eax + 0x90], 0
mov ecx, dword [esp + 0x14c]
movzx edx, byte [ecx + 0x9f]
test edx, edx
jne 0x86b81a
movzx edx, byte [ecx + 0x83]
test edx, edx
jne 0x86b81a
movzx edx, byte [ecx + 0x8b]
test edx, edx
jne 0x86b81a
movzx edx, byte [ecx + 0x93]
test edx, edx
jne 0x86b81a
movzx edx, byte [ecx + 0xab]
test edx, edx
jne 0x86b81a
movzx edx, byte [ecx + 0x168]
test edx, edx
jne 0x86b81a
movzx ecx, byte [ecx + 0x170]
test ecx, ecx
jne 0x86b81a
mov edx, eax
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x4c]
jmp 0x86b29e
mov dword [eax + 0x90], 0
jmp 0x86b80b
mov eax, dword [esp + 0x50]
jmp 0x86b7b7
lea edi, [edx + 0x34]
mov eax, ecx
call fcn.00456ab0
jmp 0x86b0fa
lea edi, [edx + 0x2c]
mov eax, ecx
call fcn.00456ab0
jmp 0x86b0ad
lea eax, [0x9c4f60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x94]
mov dword [esp + 8], eax
call fcn.00411120
xor eax, eax
jmp 0x86b024
lea edi, [edx + 0xc]
mov eax, ecx
call fcn.00456ab0
jmp 0x86ae7b
mov eax, ecx
call fcn.00456ab0
jmp 0x86ae2e
mov eax, dword [0xe7a55c]
mov ecx, dword [0xe7a558]
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], ecx
mov dword [esp + 0x15c], eax
add esp, 0x148
ret
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], ecx
mov dword [esp + 0x15c], eax
add esp, 0x148
ret
call fcn.00455270
jmp fcn.0086abf0