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

Disassembly:
mov ecx, dword [0x58f5c4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4a74a9
sub esp, 0x68
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x70]
xor edx, edx
mov ebx, 0x84222325
mov ebp, 0xcbf29ce4
jmp 0x4a6dd4
mov esi, dword [esp + 0x40]
lea edx, [esi + 1]
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x70]
mov ebx, eax
mov ebp, ecx
mov eax, esi
mov ecx, edi
cmp ecx, edx
jle 0x4a71da
lea esi, [eax + edx*8]
mov edi, dword [esi]
test edi, edi
je 0x4a71e6
mov dword [esp + 0x40], edx
mov eax, dword [edi + 8]
mov esi, dword [esi + 4]
cmp eax, 0x854f63b7
ja 0x4a6ff3
cmp eax, 0x5272f85c
ja 0x4a6ee9
cmp eax, 0x7e34ced
ja 0x4a6e7c
cmp eax, 0x778cdb8
je 0x4a6e48
cmp eax, 0x7e34ced
jne 0x4a749e
lea eax, [0x4b33e0]
cmp edi, eax
jne 0x4a749e
mov edi, dword [esi]
mov dword [esp + 0x44], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x18], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a748d
lea eax, [0x4b6040]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.004a7540
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4a6dbd
cmp eax, 0x38dfc0a9
jne 0x4a6ea9
lea eax, [0x4b3260]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x54], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x28], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a7440
cmp eax, 0x5272f85c
jne 0x4a71e6
lea eax, [0x4b6300]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
call fcn.004a75a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4a6dbd
cmp eax, 0x6bed3cfa
jbe 0x4a6f7f
cmp eax, 0x6d0f0857
jne 0x4a6f21
lea eax, [0x4b32e0]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x4c], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x20], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a73fb
cmp eax, 0x81044065
jne 0x4a6f4e
lea eax, [0x4b31e0]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x60], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x34], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a73ad
cmp eax, 0x854f63b7
jne 0x4a71e6
lea eax, [0x4b3320]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x48], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x1c], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a7367
cmp eax, 0x64fd0d3c
jne 0x4a6fbb
lea eax, [0x4b62c0]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
call fcn.004a75a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4a6dbd
cmp eax, 0x6bed3cfa
jne 0x4a71e6
lea eax, [0x4b6180]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.004a7630
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
jmp 0x4a6dbd
cmp eax, 0x99d6dd43
ja 0x4a70e5
cmp eax, 0x95738979
jbe 0x4a7071
cmp eax, 0x99777383
jne 0x4a7032
lea eax, [0x4b3360]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x5c], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x30], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a7319
cmp eax, 0x99d6dd43
jne 0x4a71e6
lea eax, [0x4b6200]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.004a75a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4a6dbd
cmp eax, 0x8fc52ddb
jne 0x4a70ac
lea eax, [0x4b6240]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.004a75a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4a6dbd
cmp eax, 0x95738979
jne 0x4a71e6
lea eax, [0x4b60c0]
cmp edi, eax
jne 0x4a71e6
movzx eax, byte [esi]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov byte [esp + 8], al
call fcn.004a74f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
jmp 0x4a6dbd
cmp eax, 0xcb735792
ja 0x4a7158
cmp eax, 0xbe66ff1c
jne 0x4a7119
lea eax, [0x4b33a0]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x58], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x2c], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a72cd
cmp eax, 0xcb735792
jne 0x4a71e6
lea eax, [0x4b6280]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
sar eax, 0x1f
mov dword [esp + 0xc], eax
call fcn.004a75a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4a6dbd
cmp eax, 0xd83fe3b3
jne 0x4a7181
lea eax, [0x4b32a0]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x50], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x24], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a7280
cmp eax, 0xe8fe0eb5
jne 0x4a71aa
lea eax, [0x4b34a0]
cmp edi, eax
jne 0x4a71e6
mov edi, dword [esi]
mov dword [esp + 0x64], edi
mov esi, dword [esi + 4]
mov dword [esp + 0x38], esi
xor eax, eax
mov dword [esp + 0x3c], eax
jmp 0x4a723b
cmp eax, 0xe927f9e3
jne 0x4a71e6
lea eax, [0x4b61c0]
cmp edi, eax
jne 0x4a71e6
mov eax, dword [esi]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.004a7630
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
jmp 0x4a6dbd
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebp
add esp, 0x68
ret
lea eax, [0x4b6040]
mov dword [esp], eax
lea eax, [0x4d8588]
mov dword [esp + 4], eax
call fcn.0043d8a0
lea ecx, [edi + eax*8]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.004a7540
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x64]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a71fe
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
mov ecx, dword [edi + eax*4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
call fcn.004a7630
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x50]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a724c
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
mov ecx, dword [edi + eax*4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
call fcn.004a75a0
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x58]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a7291
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
mov ecx, dword [edi + eax*4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
sar ecx, 0x1f
mov dword [esp + 0xc], ecx
call fcn.004a75a0
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a72de
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
lea ecx, [edi + eax*8]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.004a75a0
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x48]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a732a
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
movzx ecx, byte [edi + eax]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov byte [esp + 8], cl
call fcn.004a74f0
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a7378
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
lea ecx, [edi + eax*8]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.004a75a0
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a73be
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
mov ecx, dword [edi + eax*4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
call fcn.004a7630
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x54]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a740c
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
mov ecx, dword [edi + eax*4]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
call fcn.004a75a0
mov eax, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x44]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, esi
jl 0x4a7451
mov eax, ebx
mov ecx, ebp
jmp 0x4a6dbd
lea eax, [0x4b6040]
jmp 0x4a71e6
call fcn.0046c370
jmp fcn.004a6d90