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

Disassembly:
push 0xffffffffffffffff
push 0x58fad8
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x61f060]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x61f060]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov esi, dword [esp + 0x90]
mov ebx, ecx
mov ecx, dword [esp + 0x80]
cmp ecx, 0xfffffffe
mov ebp, edx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x28], esi
lea edi, [ebp + 0x1c]
je 0x5625f1
test ecx, ecx
je 0x5625e5
cmp ecx, dword [esp + 0x88]
je 0x5625f1
call fcn.00488b7b
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0x8c]
jne 0x56260d
mov dword [ebx + 4], eax
mov dword [ebx], ecx
mov eax, ebx
jmp 0x562d5c
cmp dword [ebp + 8], 0
mov ebx, dword [esi]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x18], 0
jbe 0x5627ca
jmp 0x562630
cmp byte [edi], 0
mov ebp, dword [esp + 0x84]
mov esi, ecx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], ebp
jne 0x5626c0
cmp ecx, 0xfffffffe
je 0x56267e
test ecx, ecx
jne 0x56265b
call fcn.00488b7b
mov ecx, dword [esp + 0x80]
cmp dword [esi + 0x18], 0x10
jb 0x562666
mov eax, dword [esi + 4]
jmp 0x562669
lea eax, [esi + 4]
mov edx, dword [esi + 0x14]
add edx, eax
cmp ebp, edx
jb 0x56267e
call fcn.00488b7b
mov ecx, dword [esp + 0x80]
cmp byte [esp + 0x94], 0
mov al, byte [ebp]
je 0x562697
mov edx, dword [ebx]
movzx eax, al
mov al, byte [eax + edx + 0x104]
mov dl, byte [edi]
cmp al, dl
je 0x5627f2
test dl, dl
jne 0x5627b2
lea esp, [esp]
add edi, 1
cmp byte [edi], 0
je 0x5626b0
jmp 0x5627b2
cmp esi, 0xfffffffe
je 0x5626d7
test esi, esi
je 0x5626d2
cmp esi, dword [esp + 0x88]
je 0x5626d7
call fcn.00488b7b
cmp ebp, dword [esp + 0x8c]
je 0x562793
cmp esi, 0xfffffffe
je 0x56270e
test esi, esi
jne 0x5626f2
call fcn.00488b7b
cmp dword [esi + 0x18], 0x10
jb 0x5626fd
mov eax, dword [esi + 4]
jmp 0x562700
lea eax, [esi + 4]
mov ecx, dword [esi + 0x14]
add ecx, eax
cmp ebp, ecx
jb 0x56270e
call fcn.00488b7b
cmp byte [esp + 0x94], 0
mov al, byte [ebp]
je 0x562727
mov ecx, dword [ebx]
movzx edx, al
mov al, byte [edx + ecx + 0x104]
cmp al, byte [edi]
jne 0x562793
add edi, 1
cmp esi, 0xfffffffe
je 0x562758
test esi, esi
jne 0x56273c
call fcn.00488b7b
cmp dword [esi + 0x18], 0x10
jb 0x562747
mov eax, dword [esi + 4]
jmp 0x56274a
lea eax, [esi + 4]
mov ecx, dword [esi + 0x14]
add ecx, eax
cmp ebp, ecx
jb 0x562758
call fcn.00488b7b
add ebp, 1
cmp byte [edi], 0
mov dword [esp + 0x30], ebp
jne 0x5626c0
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x18], 0
jne 0x5627fc
cmp esi, 0xfffffffe
je 0x56282a
test esi, esi
je 0x562825
cmp esi, dword [esp + 0x80]
jmp 0x562823
cmp byte [edi], 0
je 0x562768
mov eax, edi
lea ebx, [ebx]
add eax, 1
cmp byte [eax], 0
jne 0x5627a0
mov ecx, dword [esp + 0x80]
lea edi, [eax + 1]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
add eax, 1
cmp eax, dword [edx + 8]
mov dword [esp + 0x18], eax
jb 0x562630
cmp ecx, 0xfffffffe
je 0x56288a
test ecx, ecx
jne 0x5627e3
call fcn.00488b7b
mov ecx, dword [esp + 0x80]
cmp dword [ecx + 0x18], 0x10
jb 0x56286d
mov eax, dword [ecx + 4]
jmp 0x562870
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0x18], 0
je 0x562818
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x80]
mov edx, dword [eax]
mov dword [ecx], edx
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov eax, ecx
jmp 0x562d5c
cmp esi, 0xfffffffe
je 0x56282a
test esi, esi
je 0x562825
cmp esi, ecx
je 0x56282a
call fcn.00488b7b
cmp ebp, dword [esp + 0x84]
jne 0x562854
lea ecx, [esp + 0x80]
call fcn.00435f0d
mov edx, dword [eax]
mov ecx, dword [esp + 0x20]
mov dword [ecx], edx
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov eax, ecx
jmp 0x562d5c
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x2c]
mov edx, dword [eax]
mov dword [ecx], edx
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov eax, ecx
jmp 0x562d5c
lea eax, [ecx + 4]
mov edx, dword [ecx + 0x14]
add edx, eax
cmp dword [esp + 0x84], edx
jb 0x56288a
call fcn.00488b7b
mov ecx, dword [esp + 0x80]
cmp byte [esp + 0x94], 0
mov eax, dword [esp + 0x84]
mov al, byte [eax]
je 0x5628b1
mov edx, ebx
mov edx, dword [edx]
movzx eax, al
mov bl, byte [eax + edx + 0x104]
mov byte [esp + 0x17], bl
jmp 0x5628b7
mov byte [esp + 0x17], al
mov bl, al
mov esi, dword [esp + 0x1c]
mov eax, dword [esi + 0xc]
test eax, eax
jne 0x5628cb
cmp dword [esi + 0x10], eax
je 0x562bb2
xor edx, edx
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], edx
mov byte [esp + 0x54], dl
cmp eax, edx
mov dword [esp + 0x78], edx
je 0x562a8e
mov edx, dword [esp + 0x28]
test dword [edx + 8], 0x200000
jne 0x56290a
mov ebp, 1
mov byte [esp + 0x54], bl
mov dword [esp + 0x64], ebp
mov byte [esp + 0x55], 0
jmp 0x562965
lea eax, [esp + 0x19]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x3c]
push edx
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], 0
call fcn.0055aa70
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x5c]
mov byte [esp + 0x84], 1
call fcn.00404046
cmp dword [esp + 0x4c], 0x10
mov byte [esp + 0x78], 0
jb 0x56295a
mov eax, dword [esp + 0x38]
push eax
call fcn.00469949
add esp, 4
mov ebp, dword [esp + 0x64]
mov ecx, dword [esp + 0x80]
cmp dword [esi + 0xc], 0
mov dword [esp + 0x18], 0
jbe 0x562a8e
mov ebx, dword [esp + 0x54]
jmp 0x562980
cmp byte [edi], 0
jne 0x5629a0
test ebp, ebp
je 0x5629e3
cmp ebp, 1
jne 0x5629a0
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x56299b
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x5629e3
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5629a5
sub eax, edx
mov esi, eax
cmp ebp, esi
mov ecx, ebp
jb 0x5629ba
mov ecx, esi
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x5629c7
lea eax, [esp + 0x54]
push ecx
push edi
push eax
call fcn.004010f6
add esp, 0xc
test eax, eax
jne 0x5629e1
cmp ebp, esi
jb 0x562a50
cmp ebp, esi
setne al
test eax, eax
jl 0x562a50
add edi, 1
cmp byte [edi], 0
jne 0x5629e3
add edi, 1
cmp byte [edi], 0
jne 0x562a16
test ebp, ebp
je 0x562bfe
cmp ebp, 1
jne 0x562a16
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x562a0d
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x562bfe
mov eax, edi
lea edx, [eax + 1]
jmp 0x562a20
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x562a20
sub eax, edx
push eax
push edi
push ebp
push 0
lea ecx, [esp + 0x60]
call fcn.0040265e
test eax, eax
mov ebx, dword [esp + 0x54]
jle 0x562bfe
mov ebp, dword [esp + 0x64]
jmp 0x562a60
add edi, 1
cmp byte [edi], 0
jne 0x562a50
add edi, 1
jmp 0x562a60
add edi, 1
cmp byte [edi], 0
jne 0x562a60
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
add eax, 1
add edi, 1
cmp eax, dword [ecx + 0xc]
mov dword [esp + 0x18], eax
jb 0x562980
mov ecx, dword [esp + 0x80]
mov bl, byte [esp + 0x17]
mov edx, dword [esp + 0x1c]
cmp dword [edx + 0x10], 0
je 0x562b97
lea eax, [esp + 0x19]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x3c]
push edx
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], 0
call fcn.0055ee10
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x5c]
mov byte [esp + 0x84], 2
call fcn.00404046
cmp dword [esp + 0x4c], 0x10
jb 0x562ae7
mov eax, dword [esp + 0x38]
push eax
call fcn.00469949
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 0x10]
xor ebx, ebx
test eax, eax
mov dword [esp + 0x28], eax
jbe 0x562b8c
mov ebp, dword [esp + 0x64]
cmp byte [edi], 0
jne 0x562b2a
test ebp, ebp
je 0x562c83
cmp ebp, 1
jne 0x562b2a
cmp dword [esp + 0x68], 0x10
mov eax, dword [esp + 0x54]
jae 0x562b21
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x562c83
mov eax, edi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x562b30
sub eax, edx
mov esi, eax
cmp ebp, esi
mov ecx, ebp
jb 0x562b45
mov ecx, esi
cmp dword [esp + 0x68], 0x10
mov eax, dword [esp + 0x54]
jae 0x562b54
lea eax, [esp + 0x54]
push ecx
push edi
push eax
call fcn.004010f6
add esp, 0xc
test eax, eax
jne 0x562b74
cmp ebp, esi
jb 0x562b74
cmp ebp, esi
setne al
test eax, eax
je 0x562c83
add edi, 1
cmp byte [edi], 0
jne 0x562b74
add ebx, 1
add edi, 1
cmp ebx, dword [esp + 0x28]
jb 0x562b00
mov bl, byte [esp + 0x17]
mov ecx, dword [esp + 0x80]
cmp dword [esp + 0x68], 0x10
jb 0x562bb2
mov edx, dword [esp + 0x54]
push edx
call fcn.00469949
mov ecx, dword [esp + 0x84]
add esp, 4
mov esi, dword [esp + 0x1c]
mov eax, dword [esi + 0x14]
test eax, 0x3ff
je 0x562bdb
mov edi, dword [esp + 0x24]
mov edi, dword [edi]
movzx edx, bl
movzx edx, word [edi + edx*2 + 0x204]
and edx, eax
test edx, 0x3ff
jne 0x562bef
test eax, 0x400
je 0x562d01
cmp bl, 0x5f
jne 0x562d01
cmp byte [esi + 0x18], 0
jne 0x562d4c
jmp 0x562d07
mov edx, dword [esp + 0x1c]
cmp byte [edx + 0x18], 0
mov eax, dword [esp + 0x80]
jne 0x562c5c
cmp eax, 0xfffffffe
je 0x562c54
test eax, eax
jne 0x562c28
call fcn.00488b7b
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x54]
cmp dword [eax + 0x18], 0x10
jb 0x562c33
mov ecx, dword [eax + 4]
jmp 0x562c36
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x562c54
call fcn.00488b7b
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x54]
add dword [esp + 0x84], 1
cmp dword [esp + 0x68], 0x10
mov esi, dword [esp + 0x20]
mov dword [esi], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 4], eax
jb 0x562c7c
push ebx
call fcn.00469949
add esp, 4
mov eax, esi
jmp 0x562d5c
mov edx, dword [esp + 0x1c]
cmp byte [edx + 0x18], 0
mov eax, dword [esp + 0x80]
jne 0x562cd9
cmp eax, 0xfffffffe
je 0x562cd1
test eax, eax
jne 0x562ca9
call fcn.00488b7b
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x18], 0x10
jb 0x562cb4
mov ecx, dword [eax + 4]
jmp 0x562cb7
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x562cd1
call fcn.00488b7b
mov eax, dword [esp + 0x80]
add dword [esp + 0x84], 1
cmp dword [esp + 0x68], 0x10
mov esi, dword [esp + 0x20]
mov dword [esi], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 4], eax
jb 0x562c7c
mov ecx, dword [esp + 0x54]
push ecx
call fcn.00469949
add esp, 4
mov eax, esi
jmp 0x562d5c
cmp byte [esi + 0x18], 0
je 0x562d4c
cmp ecx, 0xfffffffe
je 0x562d44
test ecx, ecx
jne 0x562d1c
call fcn.00488b7b
mov ecx, dword [esp + 0x80]
cmp dword [ecx + 0x18], 0x10
jb 0x562d27
mov eax, dword [ecx + 4]
jmp 0x562d2a
lea eax, [ecx + 4]
mov edx, dword [ecx + 0x14]
add edx, eax
cmp dword [esp + 0x84], edx
jb 0x562d44
call fcn.00488b7b
mov ecx, dword [esp + 0x80]
add dword [esp + 0x84], 1
mov eax, dword [esp + 0x20]
mov dword [eax], ecx
mov ecx, dword [esp + 0x84]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.00488a42
add esp, 0x68
ret 0x18