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

Disassembly:
mov ecx, dword [0x57adc8]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x499eba
sub esp, 0x9c
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x5c]
mov ecx, dword [ecx + 0x14]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x7c], ecx
lea edx, [esp + 0x60]
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], eax
lea eax, [esp + 0x7c]
mov dword [esp], eax
lea eax, [esp + 0x34]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov byte [esp + 0x14], 1
call fcn.0044dd20
mov eax, dword [esp + 0x18]
test eax, eax
je 0x499eb3
mov eax, dword [esp + 0xa0]
mov edx, dword [eax + 0x68]
test edx, edx
jne 0x499ac9
xor ecx, ecx
xor edx, edx
jmp 0x499bbb
mov eax, dword [edx]
call eax
mov eax, dword [esp]
mov ecx, dword [esp]
mov ebx, dword [esp + 4]
test eax, eax
je 0x499b93
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x40], ebx
mov eax, dword [0x554c70]
mov ecx, dword [0x554c74]
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.004703f0
movzx eax, byte [esp + 0x10]
test al, al
je 0x499b12
xor eax, eax
xor ecx, ecx
jmp 0x499bb0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
lea eax, [0x4d6b7c]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], 0x13
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x98], eax
lea eax, [0x4cbc00]
mov dword [esp], eax
lea ecx, [esp + 0x8c]
mov dword [esp + 4], ecx
call fcn.0040ab80
mov eax, dword [esp + 8]
mov ecx, eax
lea eax, [0x4e4584]
jmp 0x499bb0
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x5c]
mov ecx, dword [ecx + 0x18]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0xa0]
mov ebx, dword [eax + 0x6c]
mov ebp, dword [eax + 0x70]
test ebx, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
test ebp, ebp
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, esi
xchg edi, eax
test al, al
xchg edi, eax
jne 0x499e85
mov dword [esp + 0x24], ecx
mov dword [esp + 0x44], edx
mov dword [esp + 4], ebp
mov dword [esp], ebx
call fcn.00482f70
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x60], ecx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], eax
mov eax, dword [eax]
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x6c], ebx
lea ebp, [esp + 0x60]
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], eax
lea eax, [esp + 0x6c]
mov dword [esp], eax
lea eax, [esp + 0x2c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov byte [esp + 0x14], 1
call fcn.0044dd20
mov eax, dword [esp + 0x18]
test eax, eax
je 0x499e7e
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x50]
mov dword [esp], ecx
call fcn.0048d000
mov eax, dword [esp + 4]
mov dword [esp + 0x20], eax
test eax, eax
jne 0x499cac
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x44]
jmp 0x499d40
mov eax, dword [esp + 4]
mov dword [esp + 0x4c], eax
mov ecx, dword [0x554c70]
mov edx, dword [0x554c74]
mov ebx, dword [esp + 8]
mov dword [esp + 0x3c], ebx
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call fcn.004703f0
movzx eax, byte [esp + 0x10]
test al, al
je 0x499cef
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x44]
jmp 0x499d40
lea eax, [0x4d626a]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], 0x11
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x98], eax
lea eax, [0x4cbc00]
mov dword [esp], eax
lea eax, [esp + 0x8c]
mov dword [esp + 4], eax
call fcn.0040ab80
mov edx, dword [esp + 8]
lea eax, [0x4e4584]
mov ecx, dword [esp + 0xa0]
mov ebx, dword [ecx + 0x98]
test ebx, ebx
je 0x499e50
mov dword [esp + 0x48], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
lea eax, [esp + 0x58]
mov dword [esp], eax
mov dword [esp + 4], ebx
call fcn.004074d0
movzx eax, byte [esp + 8]
test al, al
je 0x499daf
mov eax, dword [esp + 0x28]
test eax, eax
je 0x499d97
mov edx, dword [esp + 0x48]
jmp 0x499e1f
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x499da9
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
jmp 0x499e1f
mov edx, dword [esp + 0x48]
jmp 0x499e1f
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x80]
mov edx, dword [eax + 0x84]
mov ebx, dword [eax + 0x88]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.004989a0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x98]
mov dword [esp], ecx
lea ecx, [esp + 0x50]
mov dword [esp + 4], ecx
call fcn.00406d80
mov eax, dword [esp + 0x28]
test eax, eax
je 0x499e13
mov edx, dword [esp + 0x48]
jmp 0x499e1f
mov eax, dword [0x554c88]
mov edx, dword [0x554c8c]
mov ecx, dword [0x57aed0]
test ecx, ecx
jne 0x499e32
mov ecx, dword [esp + 0xa0]
jmp 0x499e46
mov ecx, dword [esp + 0xa0]
mov ebx, dword [ecx + 0x98]
call fcn.00469cd0
mov dword [edi], ebx
mov dword [ecx + 0x98], 0
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], 0
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
lea eax, [esp + 0x60]
mov dword [esp + 4], eax
call fcn.00406400
add esp, 0x9c
ret
add esp, 0x9c
ret
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], 0
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
lea eax, [esp + 0x60]
mov dword [esp + 4], eax
call fcn.00406400
add esp, 0x9c
ret
add esp, 0x9c
ret
call fcn.004688b0
jmp fcn.004999e0