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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x50]
cmp eax, dword [ecx + 8]
jbe 0x4e7dd0
sub esp, 0xd0
mov edx, dword [esp + 0xf8]
test edx, edx
je 0x4e7d46
mov ecx, dword [esp + 0xfc]
lea edx, [ecx - 1]
mov ebx, dword [esp + 0xf8]
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd4]
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xbc], eax
xor eax, eax
mov dword [esp + 0x58], eax
xor eax, eax
mov dword [esp + 0x4c], eax
xor eax, eax
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0xbc]
jmp 0x4e7958
mov esi, dword [esp + 0x64]
mov edx, ebx
lea ebx, [0x6e2360]
test edx, edx
jle 0x4e774a
lea ebx, [edx - 1]
cmp ebx, ecx
jae 0x4e7dbc
lea esi, [edx + edx*4]
lea esi, [edi + esi*4 - 8]
cmp dword [esi], ebp
jg 0x4e7724
cmp edx, ecx
jae 0x4e7db5
lea ebx, [edx + edx*4]
lea ebp, [edi + ebx*4 + 0xc]
mov esi, dword [esp + 0x64]
cmp dword [ebp], esi
jge 0x4e79f6
xor ebx, ebx
test bl, bl
je 0x4e7775
dec edx
test edx, edx
jl 0x4e7d9d
cmp ecx, edx
jbe 0x4e7d96
mov dword [esp + 0x70], edx
lea ecx, [edx + edx*4]
mov dword [esp + 0x80], ecx
mov ebx, dword [edi + ecx*4]
mov ebp, dword [edi + ecx*4 + 4]
mov esi, dword [edi + ecx*4 + 8]
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x84]
mov dword [esp + 8], ecx
mov edi, dword [esp + 0xc4]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x58]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], esi
call fcn.004e0f20
mov eax, dword [esp + 0x30]
mov dword [esp + 0xd4], eax
mov ecx, dword [esp + 0x34]
mov dword [esp + 0xd8], ecx
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x80]
mov eax, dword [esp + 0xf8]
mov edi, dword [eax + edi*4 + 0x10]
mov ecx, dword [esp + 0x88]
sub ecx, edi
mov edi, dword [esp + 0x88]
cmp ecx, edi
ja 0x4e7d8d
mov dword [esp + 0xe4], ecx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], esi
mov dword [esp + 0xdc], edx
mov dword [esp + 0xc8], ebx
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov edx, dword [esp + 0xe8]
sub edx, ecx
mov dword [esp + 0x80], edx
neg edx
sar edx, 0x1f
and edx, ecx
mov ebx, dword [esp + 0xe0]
add edx, ebx
mov dword [esp + 0xc], edx
sub edi, ecx
mov dword [esp + 0x10], edi
mov edx, dword [esp + 0x80]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0xec]
mov dword [esp + 0x18], edx
mov edi, dword [esp + 0xf0]
mov dword [esp + 0x1c], edi
mov ebx, dword [esp + 0xf4]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], eax
mov edi, dword [esp + 0x70]
mov dword [esp + 0x28], edi
mov ebx, dword [esp + 0x100]
mov dword [esp + 0x2c], ebx
call fcn.004e76a0
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0xf8]
mov edx, dword [esp + 0xe4]
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x70]
mov ecx, eax
mov ebx, dword [esp + 0xf8]
mov eax, dword [esp + 0xd8]
mov edi, dword [esp + 0xd4]
mov esi, dword [esp + 0xdc]
mov edx, dword [esp + 0x70]
mov dword [esp + 0xb4], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x4c], ebp
mov dword [esp + 0xac], ebx
mov ebx, dword [esp + 0xc8]
mov dword [esp + 0xc4], ebx
mov ebp, dword [esp + 0xe4]
mov ecx, dword [esp + 0xb4]
mov ebx, dword [esp + 0xf8]
cmp dword [0x6dd104], eax
jge 0x4e7a86
mov dword [esp + 0xcc], edi
mov dword [esp + 0x88], ebp
mov dword [esp + 0x84], esi
lea ebp, [eax - 1]
test ebp, ebp
jl 0x4e7a79
mov esi, dword [edi + eax*4 - 4]
nop
cmp esi, 0x10000
jb 0x4e7a60
shr esi, 0x10
mov dword [esp + 0x9c], eax
mov eax, 0x10
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x9c]
cmp esi, 0x100
jb 0x4e7a57
shr esi, 8
mov edi, dword [esp + 0x60]
add edi, 8
cmp esi, 0x100
jae 0x4e7dc3
shl ebp, 5
lea ebx, [0x6e2360]
movzx esi, byte [ebx + esi]
add esi, edi
add ebp, esi
mov dword [esp + 0x64], ebp
mov esi, ebp
sar ebp, 1
mov edi, dword [esp + 0xf8]
jmp 0x4e7730
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov ecx, dword [edi + ebx*4]
mov edx, dword [edi + ebx*4 + 4]
mov ebx, dword [edi + ebx*4 + 8]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x84]
mov dword [esp + 0x14], edx
call fcn.004de190
mov eax, dword [esp + 0x18]
test eax, eax
setge bl
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0xfc]
mov edx, dword [esp + 0x7c]
mov edi, dword [esp + 0xf8]
jmp 0x4e7768
mov edi, dword [esp + 0x60]
jmp 0x4e79c5
mov dword [esp + 0xa4], eax
xor eax, eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xa4]
jmp 0x4e79af
lea ebx, [0x6e2360]
xor ebp, ebp
jmp 0x4e79e2
mov dword [esp + 0xe4], ebp
mov edx, dword [esp + 0xec]
cmp edx, 0xa
jne 0x4e7be3
mov ecx, ebp
jmp 0x4e7b26
add ebx, 0x30
mov byte [ebp + esi - 1], bl
mov ebx, dword [esp + 0x68]
inc ebx
mov ebp, dword [esp + 0xf0]
mov edx, dword [esp + 0xdc]
mov dword [esp + 0x68], ebx
mov ebx, eax
mov eax, dword [esp + 0xd4]
mov edx, dword [esp + 0x68]
cmp ebp, edx
jle 0x4e7bb0
mov ebp, dword [esp + 0x88]
test ebp, ebp
jle 0x4e7b0f
lea edx, [ebp - 1]
mov dword [esp + 0x88], edx
mov eax, 0xcccccccd
mul ebx
shr edx, 3
mov eax, edx
lea edx, [edx + edx*4]
shl edx, 1
sub ebx, edx
mov edx, dword [esp + 0x88]
cmp edx, edi
jb 0x4e7aa4
jmp 0x4e7d84
mov eax, ecx
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd4]
mov ecx, dword [esp + 0xe4]
test eax, eax
jle 0x4e7bbc
mov dword [esp + 0x74], ebp
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x18], eax
call fcn.004e0cb0
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xd4], eax
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [esp + 0xdc], edx
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0xf0]
mov esi, dword [esp + 0xe0]
mov edi, dword [esp + 0xe4]
mov dword [esp + 0x94], eax
xor eax, eax
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x94]
jmp 0x4e7acb
mov ebp, dword [esp + 0x88]
jmp 0x4e7b0f
mov edx, dword [esp + 0xe0]
jmp 0x4e7bcc
mov byte [ebp + edx - 1], 0x30
mov ebp, eax
test ebp, ebp
jle 0x4e7bdc
lea eax, [ebp - 1]
cmp eax, ecx
jb 0x4e7bc5
jmp 0x4e7d67
add esp, 0xd0
ret
mov ecx, ebp
jmp 0x4e7ca9
mov byte [esp + 0x4b], dl
mov edx, dword [esp + 0xe0]
movzx ecx, byte [esp + 0x4b]
mov byte [edi + edx - 1], cl
mov edx, dword [esp + 0x6c]
inc edx
mov dword [esp + 0x6c], edx
mov edi, eax
mov eax, dword [esp + 0x5c]
xor edx, edx
div ebp
mov edx, dword [esp + 0xf0]
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0xdc]
mov ebx, eax
mov dword [esp + 0x88], edi
mov eax, dword [esp + 0xd4]
mov edi, dword [esp + 0xf0]
mov edx, dword [esp + 0x6c]
cmp edi, edx
jle 0x4e7d3a
mov edi, dword [esp + 0x88]
test edi, edi
jle 0x4e7c89
test ebp, ebp
je 0x4e7d7f
mov eax, ebx
xor edx, edx
div ebp
cmp edx, 0x3e
jae 0x4e7d73
mov dword [esp + 0x5c], ebx
lea eax, [edi - 1]
lea ebx, [0x5ddaba]
movzx edx, byte [ebx + edx]
cmp eax, esi
jb 0x4e7bea
jmp 0x4e7d6c
mov ecx, esi
mov edx, ebp
mov eax, dword [esp + 0xd8]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd4]
mov ebp, dword [esp + 0x88]
test eax, eax
jle 0x4e7bbc
mov dword [esp + 0x74], ebp
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x18], eax
call fcn.004e0cb0
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xd4], eax
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xd8], ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 0xdc], edx
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0xec]
mov esi, dword [esp + 0xe4]
mov edi, dword [esp + 0xf0]
mov dword [esp + 0x8c], eax
xor eax, eax
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x8c]
jmp 0x4e7c3d
mov edi, dword [esp + 0x88]
jmp 0x4e7c89
mov ebp, dword [esp + 0xe4]
mov eax, dword [esp + 0xd8]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd4]
jmp 0x4e7a86
call fcn.0045e2a0
mov ecx, esi
call fcn.0045e2a0
mov eax, edx
mov ecx, 0x3e
call fcn.0045e2b0
call fcn.004305c0
mov eax, edx
mov ecx, edi
call fcn.0045e2a0
mov eax, ecx
mov ecx, edi
call fcn.0045e300
mov eax, edx
call fcn.0045e2a0
lea eax, [0x5a5ba0]
mov dword [esp], eax
lea eax, [0x60e918]
mov dword [esp + 4], eax
call fcn.00431c00
mov eax, edx
call fcn.0045e2a0
mov eax, ebx
call fcn.0045e2a0
mov eax, esi
mov ecx, 0x100
call fcn.0045e2b0
nop
call fcn.0045ccc0
jmp fcn.004e76a0