Function at 0x4b82c0
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x14]
cmp eax, dword [ecx + 8]
jbe 0x4b8d36
sub esp, 0x94
call fcn.004b7d70
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp]
mov ebp, dword [esp + 4]
test eax, eax
jne 0x4b8315
mov dword [esp + 0x38], ebp
mov dword [esp + 0x78], ebx
mov eax, dword [esp + 0x98]
xor ecx, ecx
xor edx, edx
xor esi, esi
xor edi, edi
jmp 0x4b8354
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], edx
add esp, 0x94
ret
inc ecx
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x38]
cmp ecx, ebp
jge 0x4b8382
mov ebx, dword [ebx + ecx*4]
mov ebp, dword [ebx + 4]
test ebp, ebp
jne 0x4b8365
mov ebp, dword [ebx + 0x48]
test eax, eax
je 0x4b836d
cmp dword [eax], ebp
jne 0x4b834b
mov dword [esp + 0x48], ecx
mov dword [esp + 0x7c], ebx
mov ebp, dword [ebx + 0x10]
jmp 0x4b83ce
mov ebx, dword [ebx + 0x14]
jmp 0x4b8661
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
add esp, 0x94
ret
mov ebp, dword [esp + 0x5c]
mov ebp, dword [ebp + 8]
mov eax, dword [esp + 0x98]
mov esi, ecx
mov edi, ebx
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x7c]
test ebp, ebp
je 0x4b837a
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], edx
mov dword [esp + 0x64], edi
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call fcn.0046be10
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0xc]
test eax, eax
jne 0x4b85b6
test ecx, ecx
je 0x4b859f
mov eax, dword [ecx + 8]
cmp eax, 0x61a1523f
jne 0x4b84fc
lea eax, [0x59a918]
cmp ebx, eax
jne 0x4b84f1
movzx eax, byte [edx + 4]
mov byte [esp + 0x27], al
movzx ecx, byte [edx + 5]
mov byte [esp + 0x25], cl
movzx ebx, byte [edx + 6]
mov byte [esp + 0x23], bl
movzx edx, byte [edx + 7]
mov byte [esp + 0x21], dl
mov ebp, dword [0x6534f8]
mov esi, dword [0x6534fc]
lea edi, [0x547680]
mov dword [esp], edi
mov dword [esp + 4], 0x10
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
call fcn.00447440
mov eax, dword [esp + 0x10]
mov dword [esp + 0x90], eax
movzx ecx, byte [esp + 0x27]
mov byte [eax + 0xc], cl
movzx ecx, byte [esp + 0x25]
mov byte [eax + 0xd], cl
movzx ecx, byte [esp + 0x23]
mov byte [eax + 0xe], cl
movzx ecx, byte [esp + 0x21]
mov byte [eax + 0xf], cl
mov ecx, dword [esp + 0x5c]
movzx edx, byte [ecx + 0x2c]
cmp edx, 0x20
jbe 0x4b84c0
xor edx, edx
xor ebx, ebx
jmp 0x4b8c11
mov dword [esp + 0x44], edx
lea eax, [0x547680]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 4
call fcn.00447590
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x44]
xor edx, edx
jmp 0x4b8bcb
lea eax, [0x59a92c]
jmp 0x4b858e
cmp eax, 0x98d3a9ba
jne 0x4b8588
lea eax, [0x59a92c]
cmp ebx, eax
jne 0x4b858e
mov dword [esp + 0x58], ebp
lea eax, [0x547680]
mov dword [esp], eax
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call fcn.00447590
mov eax, dword [esp + 0xc]
mov dword [esp + 0x90], eax
mov ecx, dword [esp + 0x5c]
movzx edx, byte [ecx + 0x2c]
cmp edx, 0x80
jbe 0x4b8557
xor edx, edx
xor ebx, ebx
jmp 0x4b8a7a
mov dword [esp + 0x44], edx
lea eax, [0x547680]
mov dword [esp], eax
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call fcn.00447590
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x44]
xor edx, edx
jmp 0x4b8a34
lea eax, [0x59a92c]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x64]
jmp 0x4b83b4
lea eax, [0x59a92c]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x64]
jmp 0x4b83b4
mov dword [esp + 0x74], esi
mov dword [esp + 0x8c], edi
lea eax, [0x54c360]
mov dword [esp], eax
call fcn.0040b170
mov eax, dword [esp + 4]
mov dword [eax + 4], 8
lea ecx, [0x55d2a0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x8c]
mov dword [eax + 8], ecx
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b85ff
mov ecx, dword [esp + 0x74]
mov dword [eax + 0xc], ecx
jmp 0x4b860f
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x74]
call fcn.0045f450
mov eax, ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x59a8a0]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x94
ret
mov ebp, dword [esp + 0x60]
mov ebp, dword [ebp + 8]
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x48]
mov esi, ebx
mov ebx, ebp
test ebx, ebx
je 0x4b834b
mov dword [esp + 0x60], ebx
mov dword [esp + 0x40], edx
mov dword [esp + 0x88], edi
mov dword [esp + 0x3c], esi
mov eax, dword [ebx + 0xc]
mov dword [esp], eax
call fcn.0046be10
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0xc]
test eax, eax
jne 0x4b899c
test ecx, ecx
je 0x4b8982
mov eax, dword [ecx + 8]
cmp eax, 0x61a1523f
jne 0x4b8825
lea eax, [0x59a918]
cmp edx, eax
jne 0x4b881a
movzx eax, byte [ebx + 4]
mov byte [esp + 0x26], al
movzx ecx, byte [ebx + 5]
mov byte [esp + 0x24], cl
movzx edx, byte [ebx + 6]
mov byte [esp + 0x22], dl
movzx ebx, byte [ebx + 7]
mov byte [esp + 0x20], bl
mov ebp, dword [0x6534f8]
mov esi, dword [0x6534fc]
lea edi, [0x547680]
mov dword [esp], edi
mov dword [esp + 4], 0x10
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
call fcn.00447440
mov eax, dword [esp + 0x10]
mov dword [esp + 0x90], eax
movzx ecx, byte [esp + 0x26]
mov byte [eax + 0xc], cl
movzx ecx, byte [esp + 0x24]
mov byte [eax + 0xd], cl
movzx ecx, byte [esp + 0x22]
mov byte [eax + 0xe], cl
movzx ecx, byte [esp + 0x20]
mov byte [eax + 0xf], cl
lea ecx, [0x54c2a0]
mov dword [esp], ecx
call fcn.0040b170
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x10
mov dword [eax + 8], 0x10
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b8779
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
jmp 0x4b8789
mov edi, eax
mov eax, dword [esp + 0x90]
call fcn.0045f450
mov eax, edi
mov ecx, dword [esp + 0x40]
lea edx, [ecx + 1]
mov ebx, dword [esp + 0x3c]
cmp ebx, edx
jb 0x4b87a1
mov edi, dword [esp + 0x88]
jmp 0x4b87e9
mov dword [esp + 0x84], eax
lea eax, [0x54a6e0]
mov dword [esp], eax
mov ebp, dword [esp + 0x88]
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00447650
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x40]
mov ebx, esi
lea ebp, [edi + ecx*8]
lea esi, [0x59aaf0]
mov dword [ebp], esi
mov ebp, dword [0x67e2d0]
lea ecx, [edi + ecx*8 + 4]
test ebp, ebp
jne 0x4b880a
mov dword [ecx], eax
jmp 0x4b864b
mov ebp, edi
mov edi, ecx
call fcn.0045f450
mov edi, ebp
jmp 0x4b864b
lea eax, [0x59a92c]
jmp 0x4b8968
cmp eax, 0x98d3a9ba
jne 0x4b8962
lea eax, [0x59a92c]
cmp edx, eax
jne 0x4b8968
mov dword [esp + 0x54], ebp
lea eax, [0x547680]
mov dword [esp], eax
mov dword [esp + 4], 0x10
mov dword [esp + 8], 0x10
call fcn.00447590
mov eax, dword [esp + 0xc]
mov dword [esp + 0x90], eax
lea ecx, [0x54c2a0]
mov dword [esp], ecx
call fcn.0040b170
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x10
mov dword [eax + 8], 0x10
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b88a0
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
jmp 0x4b88b0
mov edi, eax
mov eax, dword [esp + 0x90]
call fcn.0045f450
mov eax, edi
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x54]
test byte [ecx], al
mov edx, dword [eax]
add ecx, 8
cmp edx, ecx
je 0x4b88db
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x10
call fcn.0045fd70
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x40]
lea edx, [ecx + 1]
mov ebx, dword [esp + 0x3c]
cmp ebx, edx
jb 0x4b88f3
mov edi, dword [esp + 0x88]
jmp 0x4b8931
lea eax, [0x54a6e0]
mov dword [esp], eax
mov ebp, dword [esp + 0x88]
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00447650
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x40]
mov ebx, esi
lea ebp, [edi + ecx*8]
lea esi, [0x59aaf0]
mov dword [ebp], esi
mov ebp, dword [0x67e2d0]
lea ecx, [edi + ecx*8 + 4]
test ebp, ebp
jne 0x4b8952
mov dword [ecx], eax
jmp 0x4b864b
mov ebp, edi
mov edi, ecx
call fcn.0045f450
mov edi, ebp
jmp 0x4b864b
lea eax, [0x59a92c]
lea esi, [0x59aaf0]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x88]
jmp 0x4b864b
lea esi, [0x59aaf0]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x88]
jmp 0x4b864b
mov dword [esp + 0x70], esi
mov dword [esp + 0x8c], edi
lea eax, [0x54c360]
mov dword [esp], eax
call fcn.0040b170
mov eax, dword [esp + 4]
mov dword [eax + 4], 8
lea ecx, [0x55d2a0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x8c]
mov dword [eax + 8], ecx
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b89e5
mov ecx, dword [esp + 0x70]
mov dword [eax + 0xc], ecx
jmp 0x4b89f5
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x70]
call fcn.0045f450
mov eax, ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x59a8a0]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x94
ret
inc edx
mov ecx, ebx
cmp edx, 0x10
jge 0x4b8a73
cmp ecx, 8
jb 0x4b8a50
cmp edx, 0x10
jae 0x4b8bbc
mov byte [eax + edx], 0xff
lea ebx, [ecx - 8]
jmp 0x4b8a31
cmp edx, 0x10
jae 0x4b8bb0
mov ebp, 0xffffffff
xchg ebp, eax
shr al, cl
xchg ebp, eax
xchg ebp, ebx
not ebx
xchg ebp, ebx
xchg ebp, ebx
mov byte [eax + edx], bl
xchg ebp, ebx
xor ebx, ebx
jmp 0x4b8a31
mov edx, 0x10
mov ebx, eax
mov dword [esp + 0x28], edx
mov dword [esp + 0x4c], ebx
lea eax, [0x54c300]
mov dword [esp], eax
call fcn.0040b170
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x10
mov dword [eax + 8], 0x10
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b8ab7
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
jmp 0x4b8ac7
mov edi, eax
mov eax, dword [esp + 0x90]
call fcn.0045f450
mov eax, edi
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ecx
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b8ae4
mov ecx, dword [esp + 0x4c]
mov dword [eax + 0xc], ecx
jmp 0x4b8af4
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x4c]
call fcn.0045f450
mov eax, ecx
mov ecx, dword [esp + 0x58]
test byte [ecx], al
mov edx, dword [eax]
mov ebx, dword [eax + 4]
cmp ebx, 0x10
jle 0x4b8b09
mov ebx, 0x10
mov dword [esp + 0x6c], eax
add ecx, 8
cmp edx, ecx
je 0x4b8b28
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.0045fd70
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x30]
lea edx, [ecx + 1]
mov ebx, dword [esp + 0x34]
cmp ebx, edx
jb 0x4b8b3d
mov edi, dword [esp + 0x64]
jmp 0x4b8b78
lea eax, [0x54a6e0]
mov dword [esp], eax
mov ebp, dword [esp + 0x64]
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00447650
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x30]
mov ebx, esi
lea ebp, [edi + ecx*8]
lea esi, [0x59ab08]
mov dword [ebp], esi
mov ebp, dword [0x67e2d0]
lea ecx, [edi + ecx*8 + 4]
test ebp, ebp
jne 0x4b8b96
mov dword [ecx], eax
jmp 0x4b8ba1
mov ebp, edi
mov edi, ecx
call fcn.0045f450
mov edi, ebp
lea eax, [0x59a92c]
mov ecx, ebx
mov ebx, edi
jmp 0x4b83b4
mov eax, edx
mov ecx, 0x10
call fcn.0045f4d0
mov eax, edx
mov ecx, 0x10
call fcn.0045f4d0
inc edx
mov ecx, ebx
cmp edx, 4
jge 0x4b8c0a
cmp ecx, 8
jb 0x4b8be7
cmp edx, 4
jae 0x4b8d29
mov byte [eax + edx], 0xff
lea ebx, [ecx - 8]
jmp 0x4b8bc8
cmp edx, 4
jae 0x4b8d1d
mov ebp, 0xffffffff
xchg ebp, eax
shr al, cl
xchg ebp, eax
xchg ebp, ebx
not ebx
xchg ebp, ebx
xchg ebp, ebx
mov byte [eax + edx], bl
xchg ebp, ebx
xor ebx, ebx
jmp 0x4b8bc8
mov edx, 4
mov ebx, eax
mov dword [esp + 0x2c], edx
mov dword [esp + 0x50], ebx
lea eax, [0x54c300]
mov dword [esp], eax
call fcn.0040b170
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x10
mov dword [eax + 8], 0x10
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b8c4e
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
jmp 0x4b8c5e
mov edi, eax
mov eax, dword [esp + 0x90]
call fcn.0045f450
mov eax, edi
mov ecx, dword [esp + 0x2c]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ecx
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x4b8c7b
mov ecx, dword [esp + 0x50]
mov dword [eax + 0xc], ecx
jmp 0x4b8c8b
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x50]
call fcn.0045f450
mov eax, ecx
mov ecx, dword [esp + 0x30]
lea edx, [ecx + 1]
mov ebx, dword [esp + 0x34]
cmp ebx, edx
jb 0x4b8ca0
mov edi, dword [esp + 0x64]
jmp 0x4b8ce5
mov dword [esp + 0x80], eax
lea eax, [0x54a6e0]
mov dword [esp], eax
mov ebp, dword [esp + 0x64]
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00447650
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x30]
mov ebx, esi
lea ebp, [edi + ecx*8]
lea esi, [0x59ab08]
mov dword [ebp], esi
mov ebp, dword [0x67e2d0]
lea ecx, [edi + ecx*8 + 4]
test ebp, ebp
jne 0x4b8d03
mov dword [ecx], eax
jmp 0x4b8d0e
mov ebp, edi
mov edi, ecx
call fcn.0045f450
mov edi, ebp
lea eax, [0x59a92c]
mov ecx, ebx
mov ebx, edi
jmp 0x4b83b4
mov eax, edx
mov ecx, 4
call fcn.0045f4d0
mov eax, edx
mov ecx, 4
call fcn.0045f4d0
nop
call fcn.0045e080
jmp fcn.004b82c0