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

Disassembly:
mov ecx, dword [0x5efcb0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xc]
cmp eax, dword [ecx + 8]
jbe 0x4d9d74
sub esp, 0x8c
mov byte [esp + 0xa8], 0
mov edx, dword [esp + 0xa0]
inc edx
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], 0
jmp 0x4d974c
cmp dword [esp + 0x24], 5
jl 0x4d9755
jmp 0x4d9757
jmp 0x4d9766
mov byte [esp + 0xa8], 0
add esp, 0x8c
ret
mov edx, dword [esp + 0x28]
cmp dword [esp + 0xa4], edx
setg dl
mov byte [esp + 0x1a], dl
jg 0x4d977f
jmp 0x4d9830
mov edx, dword [esp + 0x90]
test byte [edx], al
mov edx, dword [edx]
mov dword [esp + 0x88], edx
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
cmp ecx, eax
ja 0x4d97ac
jmp 0x4d9d6e
lea edx, [edx + eax*8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], edx
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x28]
lea eax, [ebx - 1]
cmp ecx, eax
ja 0x4d97e0
jmp 0x4d9d69
lea eax, [edx + ebx*8 - 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.004d95c0
movzx eax, byte [esp + 0x14]
mov byte [esp + 0x1b], al
xor eax, 1
mov byte [esp + 0x1a], al
jmp 0x4d9832
jmp 0x4d9832
movzx edx, byte [esp + 0x1a]
test dl, dl
jne 0x4d983d
jmp 0x4d9848
inc dword [esp + 0x28]
jmp 0x4d9843
jmp 0x4d9766
mov edx, dword [esp + 0x28]
cmp dword [esp + 0xa4], edx
je 0x4d9857
jmp 0x4d9866
mov byte [esp + 0xa8], 1
add esp, 0x8c
ret
mov edx, dword [esp + 0xa4]
sub edx, dword [esp + 0xa0]
cmp edx, 0x32
jl 0x4d987b
jmp 0x4d988a
mov byte [esp + 0xa8], 0
add esp, 0x8c
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
cmp ecx, eax
ja 0x4d98a5
jmp 0x4d9d64
lea edx, [edx + eax*8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], edx
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x28]
lea eax, [ebx - 1]
cmp ecx, eax
ja 0x4d98d3
jmp 0x4d9d5f
mov eax, dword [esp + 0x28]
mov ebp, dword [esp + 0x94]
mov ecx, dword [esp + 0x98]
lea edx, [edx + ebx*8 - 8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
cmp ecx, eax
ja 0x4d98f7
jmp 0x4d9d5a
lea esi, [ebp + eax*8]
lea ebp, [ebp + eax*8 + 4]
mov dword [ebp], edx
mov edx, dword [0x5efdd0]
test edx, edx
je 0x4d990e
jmp 0x4d9910
jmp 0x4d991e
call fcn.004757c0
mov dword [edi], ebx
mov edx, dword [esi]
mov dword [edi + 4], edx
jmp 0x4d991e
mov dword [esi], ebx
mov edx, dword [esp + 0x28]
lea eax, [edx - 1]
mov dword [esp + 0x34], eax
mov ebx, dword [esp + 0x94]
mov ecx, dword [esp + 0x98]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x74]
cmp ecx, eax
ja 0x4d994a
jmp 0x4d9d55
lea edi, [ebx + edx*8 - 8]
lea edx, [ebx + edx*8 - 4]
mov dword [edx], esi
mov edx, dword [0x5efdd0]
test edx, edx
je 0x4d9960
jmp 0x4d9962
jmp 0x4d9974
mov eax, edi
call fcn.004757c0
mov dword [edi], ebp
mov edx, dword [eax]
mov dword [edi + 4], edx
mov edi, eax
jmp 0x4d9974
mov dword [edi], ebp
mov edx, dword [esp + 0x28]
sub edx, dword [esp + 0xa0]
cmp edx, 2
jge 0x4d9988
jmp 0x4d9996
mov edx, dword [esp + 0x28]
dec edx
mov dword [esp + 0x20], edx
jmp 0x4d9b8e
jmp 0x4d9998
mov edx, dword [esp + 0xa4]
sub edx, dword [esp + 0x28]
cmp edx, 2
jge 0x4d99aa
jmp 0x4d99b5
mov edx, dword [esp + 0x28]
inc edx
mov dword [esp + 0x1c], edx
jmp 0x4d99c2
jmp 0x4d99b7
jmp 0x4d99b9
inc dword [esp + 0x24]
jmp 0x4d974c
mov edx, dword [esp + 0x1c]
cmp dword [esp + 0xa4], edx
jg 0x4d99d4
jmp 0x4d9b69
mov edx, dword [esp + 0x90]
test byte [edx], al
mov edx, dword [edx]
mov dword [esp + 0x50], edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
cmp ecx, eax
ja 0x4d99fe
jmp 0x4d9b89
lea edx, [edx + eax*8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], edx
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x1c]
lea eax, [ebx - 1]
cmp ecx, eax
ja 0x4d9a2c
jmp 0x4d9b84
lea eax, [edx + ebx*8 - 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x50]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.004d95c0
movzx eax, byte [esp + 0x14]
mov byte [esp + 0x1a], al
test al, al
jne 0x4d9a73
jmp 0x4d9b67
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
cmp ecx, eax
ja 0x4d9a8e
jmp 0x4d9b7f
lea edx, [edx + eax*8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], edx
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x1c]
lea eax, [ebx - 1]
cmp ecx, eax
ja 0x4d9abc
jmp 0x4d9b7a
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x94]
mov ecx, dword [esp + 0x98]
lea edx, [edx + ebx*8 - 8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
cmp ecx, eax
ja 0x4d9ae0
jmp 0x4d9b75
lea esi, [ebp + eax*8]
lea ebp, [ebp + eax*8 + 4]
mov dword [ebp], edx
mov edx, dword [0x5efdd0]
test edx, edx
je 0x4d9af7
jmp 0x4d9af9
jmp 0x4d9b07
call fcn.004757c0
mov dword [edi], ebx
mov edx, dword [esi]
mov dword [edi + 4], edx
jmp 0x4d9b07
mov dword [esi], ebx
mov edx, dword [esp + 0x1c]
lea eax, [edx - 1]
mov dword [esp + 0x2c], eax
mov ebx, dword [esp + 0x94]
mov ecx, dword [esp + 0x98]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
cmp ecx, eax
ja 0x4d9b30
jmp 0x4d9b70
lea edi, [ebx + edx*8 - 8]
lea edx, [ebx + edx*8 - 4]
mov dword [edx], esi
mov edx, dword [0x5efdd0]
test edx, edx
je 0x4d9b46
jmp 0x4d9b48
jmp 0x4d9b5a
mov eax, edi
call fcn.004757c0
mov dword [edi], ebp
mov edx, dword [eax]
mov dword [edi + 4], edx
mov edi, eax
jmp 0x4d9b5a
mov dword [edi], ebp
jmp 0x4d9b5e
inc dword [esp + 0x1c]
jmp 0x4d99c2
jmp 0x4d9b6b
jmp 0x4d9b6b
jmp 0x4d99b7
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
mov edx, dword [esp + 0x20]
test edx, edx
jg 0x4d9b9b
jmp 0x4d9d30
mov edx, dword [esp + 0x90]
test byte [edx], al
mov edx, dword [edx]
mov dword [esp + 0x6c], edx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
cmp ecx, eax
ja 0x4d9bc5
jmp 0x4d9d50
lea edx, [edx + eax*8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], edx
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x20]
lea eax, [ebx - 1]
cmp ecx, eax
ja 0x4d9bf3
jmp 0x4d9d4b
lea eax, [edx + ebx*8 - 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], eax
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0x6c]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.004d95c0
movzx eax, byte [esp + 0x14]
mov byte [esp + 0x1a], al
test al, al
jne 0x4d9c3a
jmp 0x4d9d2e
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
cmp eax, ecx
jb 0x4d9c55
jmp 0x4d9d46
lea edx, [edx + eax*8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], edx
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x20]
lea eax, [ebx - 1]
cmp ecx, eax
ja 0x4d9c83
jmp 0x4d9d41
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x94]
mov ecx, dword [esp + 0x98]
lea edx, [edx + ebx*8 - 8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
cmp ecx, eax
ja 0x4d9ca7
jmp 0x4d9d3c
lea esi, [ebp + eax*8]
lea ebp, [ebp + eax*8 + 4]
mov dword [ebp], edx
mov edx, dword [0x5efdd0]
test edx, edx
je 0x4d9cbe
jmp 0x4d9cc0
jmp 0x4d9cce
call fcn.004757c0
mov dword [edi], ebx
mov edx, dword [esi]
mov dword [edi + 4], edx
jmp 0x4d9cce
mov dword [esi], ebx
mov edx, dword [esp + 0x20]
lea eax, [edx - 1]
mov dword [esp + 0x30], eax
mov ebx, dword [esp + 0x94]
mov ecx, dword [esp + 0x98]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x58]
cmp ecx, eax
ja 0x4d9cf7
jmp 0x4d9d37
lea edi, [ebx + edx*8 - 8]
lea edx, [ebx + edx*8 - 4]
mov dword [edx], esi
mov edx, dword [0x5efdd0]
test edx, edx
je 0x4d9d0d
jmp 0x4d9d0f
jmp 0x4d9d21
mov eax, edi
call fcn.004757c0
mov dword [edi], ebp
mov edx, dword [eax]
mov dword [edi + 4], edx
mov edi, eax
jmp 0x4d9d21
mov dword [edi], ebp
jmp 0x4d9d25
dec dword [esp + 0x20]
jmp 0x4d9b8e
jmp 0x4d9d32
jmp 0x4d9d32
jmp 0x4d9998
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
call fcn.00475830
nop
call fcn.004743b0
jmp fcn.004d9710