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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xac]
cmp eax, dword [ecx + 8]
jbe 0x4d6a2c
sub esp, 0x12c
mov eax, dword [esp + 0x134]
movzx ecx, byte [eax]
cmp cl, 4
ja 0x4d6350
cmp cl, 1
ja 0x4d60f5
test cl, cl
jne 0x4d5fff
mov ecx, dword [eax + 4]
mov dword [esp + 4], 0
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0x134]
mov edx, dword [edx + 8]
mov dword [esp + 4], 0
mov dword [esp], edx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x2c], ecx
lea edi, [esp + 0x10c]
mov edx, eax
xor eax, eax
call fcn.0045a8e8
lea eax, [0x53521d]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], 7
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x118], eax
lea eax, [0x534803]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], 2
mov dword [esp + 0x124], edx
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0x10c]
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call fcn.004d5a50
add esp, 0x12c
ret
mov ecx, dword [eax + 4]
mov dword [esp + 4], 0
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x44], ecx
mov edx, dword [esp + 0x134]
mov edx, dword [edx + 8]
mov dword [esp + 4], 0
mov dword [esp], edx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x40], ecx
lea edi, [esp + 0x10c]
mov edx, eax
xor eax, eax
call fcn.0045a8e8
lea eax, [0x536583]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], 0xc
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x118], eax
lea eax, [0x534803]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], 2
mov dword [esp + 0x124], edx
mov eax, dword [esp + 0x40]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0x10c]
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call fcn.004d5a50
jmp 0x4d5ff8
cmp cl, 2
je 0x4d625a
cmp cl, 3
jne 0x4d61fd
mov ecx, dword [eax + 8]
mov dword [esp + 4], 0
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe4], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], ecx
mov edx, dword [esp + 0x134]
mov edx, dword [edx + 4]
mov dword [esp + 4], 0
mov dword [esp], edx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x3c], ecx
lea edi, [esp + 0x10c]
mov edx, eax
xor eax, eax
call fcn.0045a8e8
lea eax, [0x534f4c]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], 6
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x118], eax
lea eax, [0x534a12]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], 4
mov dword [esp + 0x124], edx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0x10c]
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call fcn.004d5a50
jmp 0x4d5ff8
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
lea eax, [0x534d3f]
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], 5
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0xf4]
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
call fcn.004d5a50
jmp 0x4d5ff8
mov ecx, dword [eax + 8]
mov dword [esp + 4], 0
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0x134]
mov edx, dword [edx + 4]
mov dword [esp + 4], 0
mov dword [esp], edx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x38], ecx
lea edi, [esp + 0x10c]
mov edx, eax
xor eax, eax
call fcn.0045a8e8
lea eax, [0x534afe]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], 4
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x118], eax
lea eax, [0x534a12]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], 4
mov dword [esp + 0x124], edx
mov eax, dword [esp + 0x38]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0x10c]
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call fcn.004d5a50
jmp 0x4d5ff8
cmp cl, 7
ja 0x4d6738
cmp cl, 5
je 0x4d66db
cmp cl, 6
je 0x4d6637
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x4d65d3
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
lea ebp, [esp + 0xb8]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.00445ff0
nop
mov eax, dword [esp + 0x10]
mov dword [esp + 0xec], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x50], ecx
lea edx, [0x51b4a0]
mov dword [esp], edx
mov dword [esp + 4], 0
lea edx, [ecx + ecx*2]
mov ebx, edx
shr edx, 0x1f
add edx, ebx
sar edx, 1
mov dword [esp + 0x54], edx
mov dword [esp + 8], edx
call fcn.00442650
mov eax, dword [esp + 0xc]
mov dword [esp], eax
mov dword [esp + 4], 0
mov eax, dword [esp + 0x54]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x10], eax
mov word [esp + 0x14], 0x122
mov byte [esp + 0x16], 0
call fcn.00495a70
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x98]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00445ca0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea edx, [0x534d5d]
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], 5
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea ecx, [esp + 0xfc]
mov dword [esp + 4], ecx
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.004d5a50
mov eax, dword [esp + 0x134]
mov ecx, dword [eax + 8]
test cx, 1
jne 0x4d656f
mov eax, dword [eax + 4]
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea edx, [0x534a12]
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], 4
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0xfc]
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.004d5a50
jmp 0x4d5ff8
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
lea eax, [0x534807]
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], 2
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea ecx, [esp + 0xf4]
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
call fcn.004d5a50
mov eax, dword [esp + 0x134]
jmp 0x4d64cb
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
lea eax, [0x535d6b]
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], 0xa
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea ecx, [esp + 0xf4]
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
call fcn.004d5a50
mov eax, dword [esp + 0x134]
jmp 0x4d6376
mov eax, dword [eax + 4]
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea edx, [0x53526a]
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], 7
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0xfc]
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.004d5a50
jmp 0x4d5ff8
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
lea eax, [0x534b26]
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], 4
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0xf4]
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
call fcn.004d5a50
jmp 0x4d5ff8
cmp cl, 8
je 0x4d689b
cmp cl, 9
je 0x4d67f7
cmp cl, 0xa
jne 0x4d5ff8
mov eax, dword [eax + 4]
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea edx, [0x53658f]
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], 0xc
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0xfc]
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.004d5a50
jmp 0x4d5ff8
mov eax, dword [eax + 4]
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea edx, [0x535224]
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], 7
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0xfc]
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call fcn.004d5a50
jmp 0x4d5ff8
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
lea ebp, [esp + 0x78]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.00445ff0
nop
mov eax, dword [esp + 0x10]
mov dword [esp + 0xf0], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x4c], ecx
lea edx, [0x51b4a0]
mov dword [esp], edx
mov dword [esp + 4], 0
lea edx, [ecx + ecx*2]
mov ebx, edx
shr edx, 0x1f
add edx, ebx
sar edx, 1
mov dword [esp + 0x54], edx
mov dword [esp + 8], edx
call fcn.00442650
mov eax, dword [esp + 0xc]
mov dword [esp], eax
mov dword [esp + 4], 0
mov eax, dword [esp + 0x54]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x10], eax
mov word [esp + 0x14], 0x122
mov byte [esp + 0x16], 0
call fcn.00495a70
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x58]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00445ca0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xdc], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x134]
mov edx, dword [edx + 4]
mov dword [esp + 4], 0
mov dword [esp], edx
mov dword [esp + 8], 0xa
call fcn.00495060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x30], ecx
lea edi, [esp + 0x10c]
mov edx, eax
xor eax, eax
call fcn.0045a8e8
lea eax, [0x534f94]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], 6
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x118], eax
lea eax, [0x534a12]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], 4
mov dword [esp + 0x124], edx
mov eax, dword [esp + 0x30]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x130]
mov dword [esp], eax
lea eax, [esp + 0x10c]
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call fcn.004d5a50
jmp 0x4d5ff8
call fcn.00459120
jmp fcn.004d5ec0