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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x4e8615
sub esp, 0x88
mov eax, dword [esp + 0x9c]
cmp eax, 3
jge 0x4e8492
jge 0x4e82bb
cmp eax, 2
jne 0x4e82af
mov ecx, dword [esp + 0x98]
cmp word [ecx], 0x7069
jne 0x4e824d
mov edx, dword [esp + 0xa4]
test edx, edx
je 0x4e8244
mov ebx, dword [esp + 0xa0]
xor ebp, ebp
mov dword [esp + 0x34], ebp
mov dword [esp + 0x40], edx
mov dword [esp + 0x54], ebx
lea eax, [0x7cb680]
mov dword [esp], eax
call fcn.00409f80
mov eax, dword [esp + 4]
lea ecx, [0x4fa280]
mov dword [eax], ecx
mov ecx, dword [esp + 0x9c]
mov dword [eax + 8], ecx
mov edx, dword [0xb91180]
test edx, edx
jne 0x4e8225
mov edx, dword [esp + 0x98]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0x34]
mov dword [eax + 0xc], ebx
mov ebp, dword [esp + 0x40]
test ebp, ebp
jne 0x4e7f9b
lea edi, [esp + 0x60]
lea esi, [0x8b5450]
call fcn.0044f6ae
nop
mov eax, dword [esp + 0x9c]
cmp eax, 3
jge 0x4e7def
jge 0x4e7ce8
cmp eax, 2
jne 0x4e7ce3
cmp word [edx], 0x7069
jne 0x4e7cc0
lea eax, [0x7cf640]
mov dword [esp], eax
call fcn.00409f80
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
mov edi, dword [esp + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov eax, dword [0xb91180]
test eax, eax
jne 0x4e7cb4
mov dword [edi], edx
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
mov dword [edi + 0x10], ecx
mov ecx, dword [0xb91180]
test ecx, ecx
jne 0x4e7ca1
mov dword [edi + 0xc], eax
lea eax, [0x8b6df0]
mov dword [esp + 0x4c], edi
mov dword [esp + 0x30], eax
lea ecx, [0x79b7c0]
mov dword [esp], ecx
call fcn.00409f80
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x30]
mov dword [eax], ecx
mov ecx, dword [0xb91180]
test ecx, ecx
jne 0x4e7c8f
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], 1
mov dword [esp + 0xb0], 1
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
add esp, 0x88
ret
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x4c]
call fcn.0044f0d0
mov eax, ecx
jmp 0x4e7c55
lea ecx, [edi + 0xc]
mov edx, edi
mov edi, ecx
call fcn.0044f0d0
mov edi, edx
jmp 0x4e7c1e
mov eax, edx
call fcn.0044f0d0
jmp 0x4e7c02
cmp eax, 3
jne 0x4e85c3
cmp word [edx], 0x7069
jne 0x4e85c3
cmp byte [edx + 2], 0x34
je 0x4e7bce
jmp 0x4e85c3
cmp eax, 3
jmp 0x4e7cc3
je 0x4e7d9c
jne 0x4e7d08
cmp word [edx], 0x7069
jne 0x4e7d94
cmp byte [edx + 2], 0x36
je 0x4e7bce
cmp eax, 3
jne 0x4e85c3
cmp word [edx], 0x6374
jne 0x4e85c3
cmp byte [edx + 2], 0x70
jne 0x4e85c3
lea eax, [0x7dbe60]
mov dword [esp], eax
call fcn.00409f80
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov edi, dword [esp + 4]
mov dword [edi + 4], edx
mov dword [edi + 8], ecx
mov ecx, dword [0xb91180]
test ecx, ecx
jne 0x4e7d8d
mov dword [edi], eax
mov ecx, dword [esp + 0x34]
mov dword [edi + 0xc], ecx
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
mov dword [edi + 0x14], ecx
mov ecx, dword [0xb91180]
test ecx, ecx
jne 0x4e7d7d
mov dword [edi + 0x10], eax
lea eax, [0x8b6e30]
jmp 0x4e7c24
lea ecx, [edi + 0x10]
mov edx, edi
mov edi, ecx
call fcn.0044f0d0
mov edi, edx
jmp 0x4e7d72
call fcn.0044f0d0
jmp 0x4e7d53
cmp eax, 3
jmp 0x4e7d08
mov dword [esp], edx
mov dword [esp + 4], eax
lea ecx, [0x8144a5]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 3
call fcn.00401ec0
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4e7dd5
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x98]
jmp 0x4e7bba
mov eax, dword [esp + 0x9c]
cmp eax, 3
mov edx, dword [esp + 0x98]
mov ebx, dword [esp + 0x34]
jmp 0x4e7cee
je 0x4e7f44
cmp eax, 4
jge 0x4e7eaf
cmp eax, 3
jne 0x4e7eaa
cmp word [edx], 0x6475
jne 0x4e7ea5
cmp byte [edx + 2], 0x70
jne 0x4e7e8b
lea eax, [0x7dbee0]
mov dword [esp], eax
call fcn.00409f80
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
mov edi, dword [esp + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov eax, dword [0xb91180]
test eax, eax
jne 0x4e7e82
mov dword [edi], edx
mov ecx, dword [esp + 0x34]
mov dword [edi + 0xc], ecx
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
mov dword [edi + 0x14], ecx
mov ecx, dword [0xb91180]
test ecx, ecx
jne 0x4e7e72
mov dword [edi + 0x10], eax
lea eax, [0x8b6e50]
jmp 0x4e7c24
lea ecx, [edi + 0x10]
mov edx, edi
mov edi, ecx
call fcn.0044f0d0
mov edi, edx
jmp 0x4e7e67
mov eax, edx
call fcn.0044f0d0
jmp 0x4e7e48
cmp eax, 4
jne 0x4e85c3
cmp dword [edx], 0x34706374
je 0x4e7d23
jmp 0x4e85c3
cmp eax, 4
jmp 0x4e7e8e
cmp eax, 4
jmp 0x4e7e8e
je 0x4e7eea
jne 0x4e7ec2
cmp dword [edx], 0x36706374
je 0x4e7d23
cmp eax, 4
jne 0x4e7ed3
cmp dword [edx], 0x34706475
je 0x4e7e18
cmp eax, 4
jne 0x4e85c3
cmp dword [edx], 0x36706475
je 0x4e7e18
jmp 0x4e85c3
mov dword [esp], edx
mov dword [esp + 4], eax
lea ecx, [0x8147f5]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
call fcn.00401ec0
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4e7f2a
mov eax, dword [esp + 0x9c]
cmp eax, 3
mov edx, dword [esp + 0x98]
mov ebx, dword [esp + 0x34]
jmp 0x4e7e01
mov eax, dword [esp + 0x9c]
cmp eax, 4
mov edx, dword [esp + 0x98]
mov ebx, dword [esp + 0x34]
jmp 0x4e7eb1
mov dword [esp], edx
mov dword [esp + 4], eax
lea ecx, [0x8144f9]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 3
call fcn.00401ec0
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4e7f84
mov eax, dword [esp + 0x9c]
cmp eax, 3
mov edx, dword [esp + 0x98]
mov ebx, dword [esp + 0x34]
jmp 0x4e7bb4
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x98]
mov ebx, dword [esp + 0x34]
jmp 0x4e7df5
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ebp
call fcn.004e9910
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x24]
test ebx, ebx
jne 0x4e81ef
mov dword [esp + 0x38], ecx
cmp ecx, 1
je 0x4e819b
xor eax, eax
test al, al
je 0x4e8192
lea edi, [esp + 0x74]
xor eax, eax
call fcn.0044f1cb
mov ecx, dword [0xb7dcc0]
mov ebx, dword [0xb7dcbc]
mov eax, edx
mov edx, dword [0xb7dcb8]
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x38]
lea edx, [ecx + 1]
cmp edx, ebp
ja 0x4e815c
lea ecx, [ecx + ecx*4]
mov ebx, dword [0xb91180]
lea edi, [eax + ecx*4]
test ebx, ebx
jne 0x4e8125
lea esi, [esp + 0x74]
call fcn.0044f6ae
mov ecx, dword [esp + 0x9c]
test ecx, ecx
je 0x4e811c
mov ebx, dword [esp + 0x98]
movzx esi, byte [ebx + ecx - 1]
xchg esi, eax
cmp al, 0x34
xchg esi, eax
jne 0x4e8110
test ecx, ecx
lea esi, [0x835ab8]
je 0x4e810c
movzx ecx, byte [ebx + ecx - 1]
cmp cl, 0x36
jne 0x4e810c
lea ecx, [0x835abc]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x18], eax
call fcn.004e7000
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x28]
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], ecx
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xb8], ebx
add esp, 0x88
ret
mov ecx, esi
jmp 0x4e80a2
test ecx, ecx
mov esi, 0
jmp 0x4e8090
mov ebx, dword [esp + 0x98]
jmp 0x4e8112
mov dword [esp + 0x50], eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x3c], ebp
lea eax, [0x7cf640]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x74]
mov dword [esp + 8], eax
call fcn.004101b0
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x48]
mov ebp, dword [esp + 0x3c]
jmp 0x4e8062
lea ebx, [0x7cf640]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.0043a950
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
lea edx, [ecx + 1]
mov ecx, dword [esp + 0x38]
jmp 0x4e8045
mov eax, edx
mov edx, ecx
jmp 0x4e8062
mov dword [esp + 0x58], edx
mov dword [esp + 0x44], ebp
mov eax, dword [edx + 8]
mov ecx, dword [edx + 4]
mov ebx, dword [edx]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov eax, dword [0xb775a4]
mov ecx, dword [0xb775a8]
mov ebx, dword [0xb775a0]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
call fcn.004e3320
movzx eax, byte [esp + 0x18]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x58]
mov ebp, dword [esp + 0x44]
jmp 0x4e8003
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], eax
add esp, 0x88
ret
lea edi, [eax + 4]
mov edx, eax
mov eax, dword [esp + 0x98]
call fcn.0044f0d0
mov eax, edx
mov edx, dword [esp + 0x98]
jmp 0x4e7b81
xor ebx, ebx
xor edx, edx
jmp 0x4e7b37
cmp eax, 3
jne 0x4e8263
cmp word [ecx], 0x7069
jne 0x4e8263
cmp byte [ecx + 2], 0x34
je 0x4e7b21
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00407990
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
lea ecx, [0x8b4990]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], eax
add esp, 0x88
ret
cmp eax, 3
mov ecx, dword [esp + 0x98]
jmp 0x4e8250
je 0x4e844a
jne 0x4e843e
mov ecx, dword [esp + 0x98]
cmp word [ecx], 0x7069
jne 0x4e8436
cmp byte [ecx + 2], 0x36
je 0x4e7b21
cmp eax, 3
jne 0x4e8263
cmp word [ecx], 0x6374
jne 0x4e8263
cmp byte [ecx + 2], 0x70
jne 0x4e8263
mov edx, dword [esp + 0xa4]
test edx, edx
jne 0x4e831f
xor edx, edx
xor ebx, ebx
xor ebp, ebp
mov esi, ebp
mov ebp, edx
mov edx, ebx
mov ebx, esi
jmp 0x4e7b39
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004e7350
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
test eax, eax
jne 0x4e8400
mov dword [esp + 0x54], edx
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov edx, dword [esp + 0x90]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x94]
mov dword [esp + 8], ebx
mov esi, dword [esp + 0x98]
mov dword [esp + 0xc], esi
mov edi, dword [esp + 0x9c]
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ebp
call fcn.004ea3c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
test ecx, ecx
jne 0x4e83ca
mov ecx, dword [esp + 0x98]
mov edx, eax
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x54]
mov eax, dword [esp + 0x9c]
jmp 0x4e8312
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], edx
add esp, 0x88
ret
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], esi
add esp, 0x88
ret
cmp eax, 3
jmp 0x4e82e6
mov ecx, dword [esp + 0x98]
jmp 0x4e82e6
mov ecx, dword [esp + 0x98]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x8144a5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 3
call fcn.00401ec0
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4e8483
mov eax, dword [esp + 0x9c]
jmp 0x4e7b06
mov eax, dword [esp + 0x9c]
cmp eax, 3
jmp 0x4e82c1
je 0x4e857b
cmp eax, 4
jge 0x4e84e5
cmp eax, 3
jne 0x4e84d9
mov ecx, dword [esp + 0x98]
cmp word [ecx], 0x6475
jne 0x4e84d4
cmp byte [ecx + 2], 0x70
je 0x4e8301
cmp eax, 4
jne 0x4e8263
cmp dword [ecx], 0x34706374
je 0x4e8301
jmp 0x4e8263
cmp eax, 4
jmp 0x4e84bd
cmp eax, 4
mov ecx, dword [esp + 0x98]
jmp 0x4e84bd
je 0x4e8530
jne 0x4e8527
mov ecx, dword [esp + 0x98]
cmp dword [ecx], 0x36706374
je 0x4e8301
cmp eax, 4
jne 0x4e8510
cmp dword [ecx], 0x34706475
je 0x4e8301
cmp eax, 4
jne 0x4e8263
cmp dword [ecx], 0x36706475
je 0x4e8301
jmp 0x4e8263
mov ecx, dword [esp + 0x98]
jmp 0x4e84ff
mov ecx, dword [esp + 0x98]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x8147f5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 4
call fcn.00401ec0
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4e856c
mov eax, dword [esp + 0x9c]
cmp eax, 3
jmp 0x4e84a0
mov eax, dword [esp + 0x9c]
cmp eax, 4
jmp 0x4e84e7
mov ecx, dword [esp + 0x98]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x8144f9]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 3
call fcn.00401ec0
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4e85b7
mov eax, dword [esp + 0x9c]
cmp eax, 3
jmp 0x4e7b00
mov eax, dword [esp + 0x9c]
jmp 0x4e8498
mov dword [esp], 0
lea ecx, [0x81b419]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x14
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.0043dbd0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00407990
mov eax, dword [esp + 8]
lea ecx, [0x7abe80]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00429580
ud2
call fcn.0044d880
jmp fcn.004e7ad0