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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x5b5d70
sub esp, 0x88
mov ecx, dword [esp + 0x8c]
movzx ebx, byte [ecx + 8]
test bl, bl
je 0x5b59b3
mov ebx, dword [ecx + 0x28]
movzx ebp, byte [ebx + 0x61]
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5b5996
mov ebp, dword [ebx + 0x84]
test ebp, ebp
je 0x5b5996
mov ebp, dword [esp + 0x90]
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x5b5979
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 0x5b5930
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], eax
movzx ebp, word [ecx + 0x32]
mov esi, dword [0x8679e8]
mov edi, dword [0x8679ec]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x3c]
jmp 0x5b5a09
mov dword [esp], ecx
mov byte [esp + 4], 0x2f
call fcn.005a8ba0
lea eax, [0x667e60]
mov dword [esp], eax
call fcn.0040b400
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x34
lea ecx, [0x6a3fc6]
mov dword [eax], ecx
lea ecx, [0x703160]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], eax
add esp, 0x88
ret
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
add esp, 0x88
ret
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
add esp, 0x88
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.005a8ba0
lea eax, [0x667e60]
mov dword [esp], eax
call fcn.0040b400
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x2e
lea ecx, [0x6a2847]
mov dword [eax], ecx
lea ecx, [0x703160]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], eax
add esp, 0x88
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 0x5b5a21
mov ebx, dword [esi + eax*4]
cmp word [ebx], bp
jne 0x5b59fc
mov eax, ebx
mov ebx, dword [esp + 0x48]
jmp 0x5b5a23
xor eax, eax
test eax, eax
je 0x5b5d46
mov eax, dword [ecx + 0x74]
test eax, eax
je 0x5b5d46
mov dword [esp + 0x34], edx
mov eax, dword [ebx + 8]
test eax, eax
jne 0x5b5a47
lea eax, [0x6acb38]
mov ecx, dword [eax]
mov edx, eax
call ecx
lea edi, [esp + 0x74]
lea esi, [esp]
call fcn.0045ffae
lea edi, [esp + 0x60]
lea esi, [esp + 0x74]
call fcn.0045ffae
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x28]
mov ecx, dword [ecx + 8]
test ecx, ecx
jne 0x5b5a7d
lea ecx, [0x6acb38]
mov eax, dword [ecx]
mov edx, ecx
call eax
lea edi, [esp + 0x74]
lea esi, [esp]
call fcn.0045ffae
lea edi, [esp + 0x4c]
lea esi, [esp + 0x74]
call fcn.0045ffae
lea edi, [esp]
lea esi, [esp + 0x4c]
call fcn.0045ffae
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x14], eax
call fcn.004afc80
lea edi, [esp + 0x74]
lea esi, [esp + 0x1c]
call fcn.0045ffae
lea eax, [0x683ba0]
mov dword [esp], eax
call fcn.0040b400
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x90]
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 [0x894e10]
test ebx, ebx
jne 0x5b5b00
mov dword [edi], ecx
jmp 0x5b5b0b
mov edx, eax
mov eax, ecx
call fcn.0045f830
mov eax, edx
mov ecx, dword [esp + 0x8c]
movzx edx, word [ecx + 0x24]
mov word [edi + 0xc], dx
movzx edx, word [ecx + 0x32]
mov word [edi + 0xe], dx
mov edx, dword [ecx + 0x74]
mov ebx, dword [ecx + 0x78]
mov ebp, dword [ecx + 0x7c]
mov dword [edi + 0x14], ebx
mov dword [edi + 0x18], ebp
mov ebx, dword [0x894e10]
test ebx, ebx
jne 0x5b5b40
mov dword [edi + 0x10], edx
jmp 0x5b5b54
lea ebx, [edi + 0x10]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045f830
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 [0x894e10]
test ebx, ebx
jne 0x5b5b72
mov dword [edi + 0x1c], edx
jmp 0x5b5b86
lea ebx, [edi + 0x1c]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045f830
mov eax, esi
mov edi, ebp
mov edx, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x5c]
mov ebp, dword [ecx + 0x60]
mov dword [edi + 0x2c], ebx
mov dword [edi + 0x30], ebp
mov ebx, dword [0x894e10]
test ebx, ebx
jne 0x5b5ba4
mov dword [edi + 0x28], edx
jmp 0x5b5bb8
lea ebx, [edi + 0x28]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045f830
mov eax, esi
mov edi, ebp
mov dword [esp + 0x44], edi
lea edx, [edi + 0x34]
mov ebx, dword [0x894e10]
test ebx, ebx
jne 0x5b5bd8
lea esi, [esp + 0x60]
mov ebx, edi
mov edi, edx
call fcn.0045ffae
jmp 0x5b5bfd
lea eax, [0x68e2e0]
mov dword [esp], eax
mov dword [esp + 4], edx
lea eax, [esp + 0x60]
mov dword [esp + 8], eax
call fcn.004109f0
mov eax, dword [esp + 0x90]
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 [0x894e10]
test edx, edx
jne 0x5b5c1b
mov dword [ebx + 0x60], ecx
jmp 0x5b5c29
lea edi, [ebx + 0x60]
mov edx, eax
mov eax, ecx
call fcn.0045f830
mov eax, edx
lea edi, [ebx + 0x6c]
mov ecx, dword [0x894e10]
test ecx, ecx
jne 0x5b5c41
lea esi, [esp + 0x74]
call fcn.0045ffae
jmp 0x5b5c66
lea eax, [0x68e2e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x74]
mov dword [esp + 8], eax
call fcn.004109f0
mov eax, dword [esp + 0x90]
mov ebx, dword [esp + 0x44]
mov ecx, dword [eax + 0x10]
mov dword [ebx + 0x80], ecx
mov ecx, dword [esp + 0x8c]
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 [0x894e10]
test edx, edx
jne 0x5b5c94
mov dword [ebx + 0x48], eax
jmp 0x5b5c9c
lea edi, [ebx + 0x48]
call fcn.0045f830
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 [0x894e10]
test edx, edx
jne 0x5b5cba
mov dword [ebx + 0x54], eax
jmp 0x5b5cc2
lea edi, [ebx + 0x54]
call fcn.0045f830
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov eax, dword [eax + 0x1c]
mov dword [esp], edx
call eax
mov eax, dword [esp + 0x8c]
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 0x5b5d02
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 + 0x8c]
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 + 0x94], 0
mov dword [esp + 0x98], 0
add esp, 0x88
ret
mov dword [esp], ecx
mov byte [esp + 4], 0x50
call fcn.005a8ba0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], ecx
add esp, 0x88
ret
call fcn.0045e420
jmp fcn.005b5870