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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5ad5d8
sub esp, 0x74
mov ecx, dword [esp + 0x78]
movzx ebx, byte [ecx + 8]
test bl, bl
je 0x5ad23d
mov ebx, dword [ecx + 0x28]
movzx ebp, byte [ebx + 0x61]
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5ad223
mov ebp, dword [ebx + 0x84]
test ebp, ebp
je 0x5ad223
mov ebp, dword [esp + 0x7c]
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x5ad209
mov esi, 0x3b9aca00
mul esi
cmp eax, 0xf9290000
xchg esi, ebx
seta bl
xchg esi, ebx
cmp edx, 0x2260f
xchg edi, ebx
sete bl
xchg edi, ebx
xchg ebp, ebx
setg bl
xchg ebp, ebx
and edi, esi
or ebp, edi
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5ad1c3
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], eax
movzx ebp, word [ecx + 0x32]
mov esi, dword [0xe6db10]
mov edi, dword [0xe6db14]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x3c]
jmp 0x5ad290
mov dword [esp], ecx
mov byte [esp + 4], 0x2f
call fcn.0059fed0
lea eax, [0x647880]
mov dword [esp], eax
call fcn.0040af90
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x34
lea ecx, [0x683ed6]
mov dword [eax], ecx
lea ecx, [0x6d2f90]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x74
ret
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
add esp, 0x74
ret
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
add esp, 0x74
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.0059fed0
lea eax, [0x647880]
mov dword [esp], eax
call fcn.0040af90
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x2e
lea ecx, [0x6827c0]
mov dword [eax], ecx
lea ecx, [0x6d2f90]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x74
ret
inc eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x38]
cmp eax, edi
jge 0x5ad2a8
mov ebx, dword [esi + eax*4]
cmp word [ebx], bp
jne 0x5ad283
mov eax, ebx
mov ebx, dword [esp + 0x48]
jmp 0x5ad2aa
xor eax, eax
test eax, eax
je 0x5ad5b1
mov eax, dword [ecx + 0x80]
test eax, eax
je 0x5ad5b1
mov dword [esp + 0x34], edx
mov eax, dword [ebx + 8]
test eax, eax
jne 0x5ad2d1
lea eax, [0x68cda4]
mov ecx, dword [eax]
mov edx, eax
call ecx
lea edi, [esp + 0x60]
lea esi, [esp]
call fcn.0045f59e
lea edi, [esp + 0x4c]
lea esi, [esp + 0x60]
call fcn.0045f59e
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x28]
mov ecx, dword [ecx + 8]
test ecx, ecx
jne 0x5ad304
lea ecx, [0x68cda4]
mov eax, dword [ecx]
mov edx, ecx
call eax
lea edi, [esp + 0x60]
lea esi, [esp]
call fcn.0045f59e
lea edi, [esp]
lea esi, [esp + 0x60]
call fcn.0045f59e
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x14], eax
call fcn.004a2950
lea edi, [esp + 0x60]
lea esi, [esp + 0x1c]
call fcn.0045f59e
lea eax, [0x664460]
mov dword [esp], eax
call fcn.0040af90
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax + 0x20]
mov ebx, dword [eax + 0x24]
mov ebp, dword [eax + 0x28]
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ebx, dword [0xe996c0]
test ebx, ebx
jne 0x5ad377
mov dword [edi], ecx
jmp 0x5ad382
mov edx, eax
mov eax, ecx
call fcn.0045efc0
mov eax, edx
mov ecx, dword [esp + 0x78]
movzx edx, word [ecx + 0x24]
mov word [edi + 0xc], dx
movzx edx, word [ecx + 0x32]
mov word [edi + 0xe], dx
mov edx, dword [ecx + 0x80]
mov ebx, dword [ecx + 0x84]
mov ebp, dword [ecx + 0x88]
mov dword [edi + 0x14], ebx
mov dword [edi + 0x18], ebp
mov ebx, dword [0xe996c0]
test ebx, ebx
jne 0x5ad3bd
mov dword [edi + 0x10], edx
jmp 0x5ad3d1
lea ebx, [edi + 0x10]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045efc0
mov eax, esi
mov edi, ebp
mov edx, dword [ecx + 0x4c]
mov ebx, dword [ecx + 0x50]
mov ebp, dword [ecx + 0x54]
mov dword [edi + 0x20], ebx
mov dword [edi + 0x24], ebp
mov ebx, dword [0xe996c0]
test ebx, ebx
jne 0x5ad3ef
mov dword [edi + 0x1c], edx
jmp 0x5ad403
lea ebx, [edi + 0x1c]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045efc0
mov eax, esi
mov edi, ebp
mov edx, dword [ecx + 0x64]
mov ebx, dword [ecx + 0x68]
mov ebp, dword [ecx + 0x6c]
mov dword [edi + 0x2c], ebx
mov dword [edi + 0x30], ebp
mov ebx, dword [0xe996c0]
test ebx, ebx
jne 0x5ad421
mov dword [edi + 0x28], edx
jmp 0x5ad435
lea ebx, [edi + 0x28]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045efc0
mov eax, esi
mov edi, ebp
mov dword [esp + 0x44], edi
lea edx, [edi + 0x34]
mov ebx, dword [0xe996c0]
test ebx, ebx
jne 0x5ad455
lea esi, [esp + 0x4c]
mov ebx, edi
mov edi, edx
call fcn.0045f59e
jmp 0x5ad477
lea eax, [0x670840]
mov dword [esp], eax
mov dword [esp + 4], edx
lea eax, [esp + 0x4c]
mov dword [esp + 8], eax
call fcn.00410400
mov eax, dword [esp + 0x7c]
mov ebx, dword [esp + 0x44]
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov ebp, dword [eax + 0x1c]
mov dword [ebx + 0x64], edx
mov dword [ebx + 0x68], ebp
mov edx, dword [0xe996c0]
test edx, edx
jne 0x5ad495
mov dword [ebx + 0x60], ecx
jmp 0x5ad4a3
lea edi, [ebx + 0x60]
mov edx, eax
mov eax, ecx
call fcn.0045efc0
mov eax, edx
lea edi, [ebx + 0x6c]
mov ecx, dword [0xe996c0]
test ecx, ecx
jne 0x5ad4bb
lea esi, [esp + 0x60]
call fcn.0045f59e
jmp 0x5ad4dd
lea eax, [0x670840]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x60]
mov dword [esp + 8], eax
call fcn.00410400
mov eax, dword [esp + 0x7c]
mov ebx, dword [esp + 0x44]
mov ecx, dword [eax + 0x10]
mov dword [ebx + 0x80], ecx
mov ecx, dword [esp + 0x78]
mov eax, dword [ecx + 0x34]
mov edx, dword [ecx + 0x38]
mov ebp, dword [ecx + 0x3c]
mov dword [ebx + 0x4c], edx
mov dword [ebx + 0x50], ebp
mov edx, dword [0xe996c0]
test edx, edx
jne 0x5ad508
mov dword [ebx + 0x48], eax
jmp 0x5ad510
lea edi, [ebx + 0x48]
call fcn.0045efc0
mov eax, dword [ecx + 0x40]
mov edx, dword [ecx + 0x44]
mov ebp, dword [ecx + 0x48]
mov dword [ebx + 0x58], edx
mov dword [ebx + 0x5c], ebp
mov edx, dword [0xe996c0]
test edx, edx
jne 0x5ad52e
mov dword [ebx + 0x54], eax
jmp 0x5ad536
lea edi, [ebx + 0x54]
call fcn.0045efc0
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov eax, dword [eax + 0x1c]
mov dword [esp], edx
call eax
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x28]
mov edx, dword [ecx + 0x44]
mov ecx, dword [ecx + 0x40]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
test edx, edx
jne 0x5ad570
mov eax, dword [ebx + 0x14]
mov dword [esp], ebp
call eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x78]
mov eax, dword [eax + 0x28]
mov ebx, dword [eax + 0x84]
mov eax, dword [eax + 0x88]
mov ebx, dword [ebx + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x44]
mov dword [esp + 0xc], eax
call ebx
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
add esp, 0x74
ret
mov dword [esp], ecx
mov byte [esp + 4], 0x50
call fcn.0059fed0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
add esp, 0x74
ret
call fcn.0045dbb0
jmp fcn.005ad110