Function at 0x4b8c30
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x5d8d34]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x6c]
cmp eax, dword [ecx + 8]
jbe 0x4b97c7
sub esp, 0xec
lea eax, [0x4e26c0]
mov dword [esp], eax
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov dword [esp + 0xa8], eax
nop
lea ecx, [0x4e03e0]
mov dword [esp], ecx
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xf0]
mov dword [eax], ecx
mov edx, dword [0x5d8e30]
test edx, edx
jne 0x4b8c96
mov edx, dword [esp + 0xf4]
jmp 0x4b8ca4
call fcn.0046cb30
mov edx, dword [esp + 0xf4]
mov dword [edi], edx
mov dword [esp + 0x98], eax
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x1c], 0x7fffffff
mov dword [eax + 0x20], 0xffffffff
mov dword [eax + 0x24], 0x7fffffff
lea ecx, [0x4d1d80]
mov dword [esp], ecx
call fcn.0040b8e0
mov eax, dword [esp + 0xf0]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 4]
mov dword [esp + 0xe8], edx
mov ebx, dword [esp + 0xf4]
mov dword [esp], ebx
mov dword [esp + 8], 0x60
mov dword [esp + 0xc], 0x60
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call ecx
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x4b9334
mov eax, dword [esp + 0xe8]
cmp byte [eax], 0x4d
jne 0x4b8e8a
cmp byte [eax + 1], 0x5a
jne 0x4b8e8a
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x94], eax
nop
lea ecx, [0x4d1b00]
mov dword [esp], ecx
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov dword [esp + 0xe4], eax
mov ecx, dword [esp + 0xf0]
mov edx, dword [ecx + 0xc]
mov ebx, dword [esp + 0xf4]
mov dword [esp], ebx
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
mov ebp, dword [esp + 0x94]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], 0
call edx
mov eax, dword [esp + 0xe4]
cmp byte [eax], 0x50
jne 0x4b8df1
cmp byte [eax + 1], 0x45
jne 0x4b8df1
movzx ecx, byte [eax + 2]
test cl, cl
jne 0x4b8df1
movzx ecx, byte [eax + 3]
test cl, cl
jne 0x4b8df1
mov eax, dword [esp + 0x94]
add eax, 4
mov ecx, 0
adc ecx, 0
jmp 0x4b8e8e
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
lea ecx, [0x4d1b00]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409b20
mov eax, dword [esp + 8]
lea ecx, [0x4d1b00]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], eax
lea eax, [0x4f2a2c]
mov dword [esp], eax
mov dword [esp + 4], 0x1e
lea eax, [esp + 0xdc]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.0049ab30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
add esp, 0xec
ret
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ecx
mov edx, dword [esp + 0x98]
mov ebx, dword [edx + 8]
mov ebp, dword [edx + 0xc]
add eax, ebx
adc ecx, ebp
cmp ebp, ecx
xchg ebp, ebx
setg bl
xchg ebp, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp eax, ebx
setb bl
and edi, ebx
or ebp, edi
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4b8ecc
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
lea eax, [0x5166f4]
mov dword [esp], eax
mov dword [esp + 4], edx
lea ecx, [0x516a24]
mov dword [esp + 8], ecx
lea ebx, [0x5d8c00]
mov dword [esp + 0xc], ebx
lea ebp, [0x4cc640]
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0xa8]
mov dword [esp + 0x14], ebp
call fcn.004a4fb0
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x4b9310
mov eax, dword [esp + 0xa8]
movzx ecx, word [eax]
cmp cx, 0x5032
ja 0x4b8f4f
cmp cx, 0x14c
ja 0x4b8f3c
test cx, cx
je 0x4b8f7b
cmp cx, 0x14c
je 0x4b8f7b
jmp 0x4b927d
cmp cx, 0x1c4
je 0x4b8f7b
cmp cx, 0x5032
je 0x4b8f7b
jmp 0x4b927d
cmp cx, 0x5128
ja 0x4b8f69
cmp cx, 0x5064
je 0x4b8f7b
cmp cx, 0x5128
je 0x4b8f7b
jmp 0x4b927d
cmp cx, 0x8664
je 0x4b8f7b
cmp cx, 0xaa64
jne 0x4b927d
mov dword [esp], eax
lea ecx, [0x516890]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 8], edx
call fcn.004bc640
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0xa8]
mov dword [esi + 0x44], eax
mov dword [esi + 0x48], ecx
mov eax, dword [0x5d8e30]
test eax, eax
je 0x4b8fd0
call fcn.0046cb40
mov dword [edi], ebx
mov eax, dword [esi + 0x40]
mov dword [edi + 4], eax
mov dword [esi + 0x40], ebx
test edx, edx
jne 0x4b925d
mov dword [esp], esi
lea eax, [0x516890]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 8], ecx
call fcn.004bcaf0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0xa8]
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], ecx
mov edi, dword [0x5d8e30]
test edi, edi
je 0x4b903e
mov dword [esp + 0xb0], ebp
call fcn.0046cb40
mov dword [edi], edx
mov ebp, dword [esi + 0x34]
mov dword [edi + 4], ebp
mov ebp, dword [esp + 0xb0]
mov dword [esi + 0x34], edx
test ebx, ebx
jne 0x4b923d
mov ebx, dword [esi + 0x40]
mov ebp, dword [esi + 0x44]
mov edi, dword [esi + 0x48]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], edi
call fcn.004bd190
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0xa8]
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], ecx
mov eax, dword [0x5d8e30]
test eax, eax
je 0x4b90a6
call fcn.0046cb40
mov dword [edi], ebx
mov eax, dword [esi + 0x28]
mov dword [edi + 4], eax
mov dword [esi + 0x28], ebx
test edx, edx
jne 0x4b921d
lea edi, [esp + 0x7c]
call fcn.0046d26e
lea eax, [0x4e2620]
mov dword [esp], eax
lea eax, [esp + 0x7c]
mov dword [esp + 4], eax
call fcn.004a61e0
mov eax, dword [esp + 8]
mov ecx, eax
sar eax, 0x1f
mov edx, dword [esp + 0x98]
mov ebx, dword [edx + 8]
mov ebp, dword [edx + 0xc]
mov esi, edx
mov edx, dword [esp + 0x4c]
add ecx, edx
mov edx, dword [esp + 0x50]
adc edx, eax
add ecx, ebx
adc edx, ebp
cmp ebp, edx
sete al
xchg ebp, ebx
setg bl
xchg ebp, ebx
cmp ecx, ebx
setb bl
and ebx, eax
or ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4b9121
mov eax, dword [0x5b1c98]
mov ecx, dword [0x5b1c9c]
jmp 0x4b912b
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], edx
xor eax, eax
xor ecx, ecx
test eax, eax
jne 0x4b91fd
mov eax, dword [esp + 0xa8]
movzx ecx, word [eax + 0x10]
lea edx, [0x516890]
mov dword [esp], edx
mov dword [esp + 4], esi
mov word [esp + 8], cx
call fcn.004b9840
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0xa8]
mov dword [ebp + 0x14], eax
mov eax, dword [0x5d8e30]
test eax, eax
je 0x4b9186
call fcn.0046cb40
mov dword [edi], edx
mov eax, dword [ebp + 0x18]
mov dword [edi + 4], eax
mov dword [ebp + 0x18], edx
test ecx, ecx
jne 0x4b91dd
movzx eax, word [ebp + 2]
lea ecx, [0x4dbbc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00467e00
mov eax, dword [esp + 0xa8]
movzx ecx, word [eax + 2]
mov edx, dword [esp + 0xc]
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], ecx
mov ecx, dword [0x5d8e30]
test ecx, ecx
je 0x4b91d3
call fcn.0046cb40
mov dword [edi], edx
mov ebx, dword [eax + 0x1c]
mov dword [edi + 4], ebx
mov dword [eax + 0x1c], edx
xor ecx, ecx
jmp 0x4b9360
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x100], ebx
add esp, 0xec
ret
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
add esp, 0xec
ret
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], ebp
add esp, 0xec
ret
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], ebx
mov dword [esp + 0x100], ebp
add esp, 0xec
ret
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], ebp
add esp, 0xec
ret
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
movzx eax, word [eax]
mov word [esp], ax
call fcn.00409b80
mov eax, dword [esp + 4]
lea ecx, [0x4d3880]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], eax
lea eax, [0x4f1f1e]
mov dword [esp], eax
mov dword [esp + 4], 0x1c
lea eax, [esp + 0xdc]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.0049ab30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
add esp, 0xec
ret
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
add esp, 0xec
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
add esp, 0xec
ret
mov dword [ecx + eax*4], edx
lea ecx, [eax + 1]
mov eax, ebp
movzx edx, word [eax + 2]
cmp ecx, edx
jge 0x4b96ab
mov dword [esp + 0x48], ecx
lea edi, [esp + 0x54]
xor eax, eax
call fcn.0046cd86
lea ecx, [0x5166f4]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
lea ebx, [0x516a24]
mov dword [esp + 8], ebx
lea ebp, [0x5d8c00]
mov dword [esp + 0xc], ebp
lea esi, [0x4d5c00]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x54]
mov dword [esp + 0x14], esi
call fcn.004a4fb0
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x4b9687
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax + 0x40]
mov edx, dword [eax + 0x44]
mov ebx, dword [eax + 0x48]
lea ebp, [esp + 0x54]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.004bc200
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x4b9663
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa4], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], ecx
lea edx, [0x4e0de0]
mov dword [esp], edx
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov dword [esp + 0x9c], eax
lea edi, [esp + 0xb4]
xor eax, eax
call fcn.0046cd86
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0xb4], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0xb8], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xbc], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0xc0], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0xc4], ecx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0xc8], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xd0], ecx
movzx ecx, word [esp + 0x74]
mov word [esp + 0xd4], cx
movzx ecx, word [esp + 0x76]
mov word [esp + 0xd6], cx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0xd8], ecx
mov ecx, dword [0x5d8e30]
test ecx, ecx
je 0x4b94e4
lea eax, [0x4e44a0]
mov dword [esp], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 4], eax
lea ecx, [esp + 0xb4]
mov dword [esp + 8], ecx
call fcn.0040deb0
xor eax, eax
mov edi, dword [esp + 0x9c]
lea esi, [esp + 0xb4]
call fcn.0046d23c
mov ecx, dword [esp + 0x68]
test ecx, ecx
jne 0x4b950d
lea ecx, [0x5d8c00]
lea edx, [0x516704]
jmp 0x4b951b
mov ecx, dword [esp + 0xf4]
mov edx, dword [esp + 0xf0]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x34], edx
mov ebx, dword [esp + 0x9c]
mov ebp, dword [ebx + 0x14]
mov dword [esp + 0x38], ebp
mov esi, dword [ebx + 0x10]
mov dword [esp + 0x40], esi
mov edi, 0xffffffff
sub edi, esi
mov ebx, 0x7fffffff
sbb ebx, 0
test ebx, ebx
setg bl
sete cl
cmp edi, ebp
xchg edi, ebx
setae bl
xchg edi, ebx
and edi, ecx
or edi, ebx
xchg edi, eax
test al, al
xchg edi, eax
je 0x4b956c
add esi, ebp
adc eax, 0
jmp 0x4b9576
mov eax, 0x7fffffff
mov esi, 0xffffffff
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], eax
lea ecx, [0x4e03e0]
mov dword [esp], ecx
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x34]
mov dword [eax], ecx
mov ecx, dword [0x5d8e30]
test ecx, ecx
jne 0x4b95a9
mov edx, dword [esp + 0xa0]
jmp 0x4b95b7
call fcn.0046cb30
mov edx, dword [esp + 0xa0]
mov dword [edi], edx
mov dword [eax + 4], edx
mov edx, dword [esp + 0x38]
mov dword [eax + 8], edx
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0
mov edx, dword [esp + 0x2c]
mov dword [eax + 0x18], edx
mov edx, dword [esp + 0x30]
mov dword [eax + 0x1c], edx
mov edx, dword [esp + 0x40]
mov dword [eax + 0x20], edx
mov dword [eax + 0x24], 0
mov edx, dword [0x5d8e30]
test edx, edx
jne 0x4b9601
mov edx, dword [esp + 0x9c]
jmp 0x4b961b
call fcn.0046cb50
mov dword [edi], eax
mov edx, dword [esp + 0x9c]
mov ebx, dword [edx + 0x3c]
mov dword [edi + 4], ebx
mov ebx, dword [edx + 0x38]
mov dword [edi + 8], ebx
mov dword [edx + 0x3c], eax
lea ebx, [0x516694]
mov dword [edx + 0x34], ebx
mov dword [edx + 0x38], eax
mov ebp, dword [esp + 0xa8]
mov ecx, dword [ebp + 0x20]
mov eax, dword [esp + 0x48]
cmp eax, ecx
jae 0x4b97c1
mov esi, dword [0x5d8e30]
mov ecx, dword [ebp + 0x1c]
test esi, esi
je 0x4b9358
call fcn.0046cb40
mov dword [edi], edx
mov esi, dword [ecx + eax*4]
mov dword [edi + 4], esi
jmp 0x4b9358
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
add esp, 0xec
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x100], eax
add esp, 0xec
ret
mov edx, dword [eax + 0x20]
mov dword [esp + 0x90], edx
mov ebx, dword [esp + 0x98]
xor ecx, ecx
jmp 0x4b96d1
lea ecx, [ebx + 1]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x98]
cmp ecx, edx
jge 0x4b978d
mov ebp, dword [eax + 0x20]
cmp ecx, ebp
jae 0x4b97b8
mov dword [esp + 0x44], ecx
mov edx, dword [eax + 0x1c]
mov edx, dword [edx + ecx*4]
test byte [edx], al
mov dword [esp], edx
lea edx, [0x516890]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.004bc310
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x44]
cmp ebx, ecx
jae 0x4b97b1
mov dword [esp + 0xac], edx
mov ebp, dword [eax + 0x1c]
mov ebp, dword [ebp + ebx*4]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0xc]
mov dword [ebp + 0x2c], esi
mov dword [ebp + 0x30], edi
mov esi, dword [0x5d8e30]
test esi, esi
je 0x4b975b
call fcn.0046cb40
mov dword [edi], edx
mov esi, dword [ebp + 0x28]
mov dword [edi + 4], esi
mov dword [ebp + 0x28], edx
test ecx, ecx
je 0x4b96c0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], ecx
mov eax, dword [esp + 0xac]
mov dword [esp + 0x100], eax
add esp, 0xec
ret
mov dword [esp + 0xf8], eax
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
add esp, 0xec
ret
mov eax, ebx
call fcn.0046cbb0
mov eax, ecx
mov ecx, ebp
call fcn.0046cbb0
call fcn.0046cbb0
nop
call fcn.0046b730
jmp fcn.004b8c30