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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x80
mov dword [esp + 0x44], edx
mov edi, ecx
mov eax, dword [0x7a8498]
xor eax, ebp
mov dword [esp + 0x78], eax
mov dword [esp + 0x48], 0xffffffff
lea eax, [ecx + 0x28]
mov dword [esp + 0x20], eax
lea eax, [ecx + 0x29]
mov dword [esp + 8], eax
mov ecx, dword [ecx + 0xa8]
mov eax, dword [edi + 0xac]
mov ebx, 0x5c
cmp ecx, eax
jae 0x5eb0c6
inc ecx
jmp 0x5eb113
cmp dword [edi + 0x20], 0
je 0x5eb119
mov esi, dword [edi + 0x24]
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x1c], eax
call dword [section..00cfg]
push esi
push dword [esp + 0x24]
push dword [esp + 0x24]
call ecx
add esp, 0xc
test eax, eax
je 0x5eb0fc
add eax, edi
add eax, 0x28
mov ecx, dword [esp + 8]
jmp 0x5eb10d
mov dword [edi + 0x20], 0
mov byte [edi + 0x28], 0
mov ecx, dword [esp + 8]
mov eax, ecx
mov dword [edi + 0xac], eax
mov dword [edi + 0xa8], ecx
dec ebx
jne 0x5eb0bf
mov ecx, dword [ebp + 0xc]
test ecx, ecx
lea eax, [esp + 0x48]
cmovne eax, ecx
mov dword [esp + 0x34], eax
mov ecx, edi
call fcn.005ef9cc
mov dword [esp + 0x14], eax
mov ecx, edi
call fcn.005ef9cc
mov ecx, eax
cmp dword [edi + 0x10], 0
je 0x5eb16a
mov ebx, ecx
mov ecx, dword [edi + 0x18]
mov esi, dword [edi + 0x1c]
call dword [section..00cfg]
push esi
call ecx
mov ecx, ebx
add esp, 4
test eax, eax
je 0x5eb17c
cmp dword [edi + 0x20], 0
je 0x5eb8b9
mov eax, dword [edi + 0xa8]
cmp eax, dword [edi + 0xac]
jae 0x5eb8b9
mov ebx, dword [esp + 0x14]
test ebx, ebx
js 0x5eb8c5
test ecx, ecx
js 0x5eb8c5
mov dword [esp + 0x18], 0
mov esi, 0
test ecx, ecx
je 0x5eb1c3
mov eax, bind
xor edx, edx
div ecx
cmp eax, ebx
jb 0x5eb8c5
mov esi, ecx
imul esi, ebx
cmp esi, 0x20000000
jae 0x5eb8c5
mov ebx, ecx
mov ecx, edi
call fcn.005ef9cc
mov ecx, edi
call fcn.005ef9cc
mov ecx, edi
call fcn.005ef9cc
mov ecx, edi
call fcn.005ef9cc
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2c], ebx
mov edx, ebx
push 0
push 4
call fcn.005efd32
add esp, 8
shl esi, 2
push esi
push 0xff
mov dword [esp + 0x30], eax
push eax
call fcn.006ccfc0
add esp, 0xc
pcmpeqd xmm0, xmm0
lea esi, [esp + 0x52]
movdqu xmmword [esi + 0xc], xmm0
movdqa xmmword [esi - 2], xmm0
xor eax, eax
dec eax
mov dword [esp + 0x1c], edi
cmp eax, 9
je 0x5eb8e6
mov dword [esp + 0x30], eax
mov ecx, dword [edi + 0xa8]
mov eax, dword [edi + 0xac]
cmp ecx, eax
jae 0x5eb256
lea edx, [ecx + 1]
mov dword [edi + 0xa8], edx
mov cl, byte [ecx]
mov dword [esp + 0xc], ecx
mov ecx, edx
jmp 0x5eb2c2
cmp dword [edi + 0x20], 0
je 0x5eb293
mov eax, dword [edi + 0x24]
mov dword [esp + 4], eax
mov ecx, dword [edi + 0x10]
mov ebx, dword [edi + 0x1c]
call dword [section..00cfg]
push dword [esp + 4]
push dword [esp + 0x24]
push ebx
call ecx
add esp, 0xc
test eax, eax
je 0x5eb29d
add eax, edi
add eax, 0x28
mov cl, byte [edi + 0x28]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 8]
jmp 0x5eb2b6
mov dword [esp + 0xc], 0
jmp 0x5eb2c2
mov dword [edi + 0x20], 0
mov byte [edi + 0x28], 0
mov dword [esp + 0xc], 0
mov ecx, dword [esp + 8]
mov eax, ecx
mov dword [edi + 0xac], eax
mov dword [edi + 0xa8], ecx
cmp ecx, eax
jae 0x5eb2d5
lea edx, [ecx + 1]
mov dword [edi + 0xa8], edx
mov bl, byte [ecx]
mov ecx, edx
jmp 0x5eb331
cmp dword [edi + 0x20], 0
je 0x5eb30e
mov eax, dword [edi + 0x24]
mov dword [esp + 4], eax
mov ecx, dword [edi + 0x10]
mov ebx, dword [edi + 0x1c]
call dword [section..00cfg]
push dword [esp + 4]
push dword [esp + 0x24]
push ebx
call ecx
add esp, 0xc
test eax, eax
je 0x5eb312
add eax, edi
add eax, 0x28
mov bl, byte [edi + 0x28]
mov ecx, dword [esp + 8]
jmp 0x5eb325
xor ebx, ebx
jmp 0x5eb331
mov dword [edi + 0x20], 0
mov byte [edi + 0x28], 0
xor ebx, ebx
mov ecx, dword [esp + 8]
mov eax, ecx
mov dword [edi + 0xac], eax
mov dword [edi + 0xa8], ecx
mov byte [esi - 2], bl
cmp ecx, eax
mov dword [esp + 4], ebx
jae 0x5eb34d
mov edx, edi
lea edi, [ecx + 1]
mov dword [edx + 0xa8], edi
mov dl, byte [ecx]
mov ecx, edi
jmp 0x5eb3a9
cmp dword [edi + 0x20], 0
je 0x5eb386
mov eax, dword [edi + 0x24]
mov dword [esp + 0x10], eax
mov ecx, dword [edi + 0x10]
mov ebx, dword [edi + 0x1c]
call dword [section..00cfg]
push dword [esp + 0x10]
push dword [esp + 0x24]
push ebx
call ecx
add esp, 0xc
test eax, eax
je 0x5eb38a
add eax, edi
add eax, 0x28
mov dl, byte [edi + 0x28]
mov ecx, dword [esp + 8]
jmp 0x5eb39d
xor edx, edx
jmp 0x5eb3a9
mov dword [edi + 0x20], 0
mov byte [edi + 0x28], 0
xor edx, edx
mov ecx, dword [esp + 8]
mov eax, ecx
mov dword [edi + 0xac], eax
mov dword [edi + 0xa8], ecx
mov byte [esi - 1], dl
cmp ecx, eax
jae 0x5eb3c3
lea edx, [ecx + 1]
mov edi, dword [esp + 0x1c]
mov dword [edi + 0xa8], edx
mov bl, byte [ecx]
mov ecx, edx
jmp 0x5eb423
mov edi, dword [esp + 0x1c]
cmp dword [edi + 0x20], 0
je 0x5eb400
mov eax, dword [edi + 0x24]
mov dword [esp + 0x10], eax
mov ecx, dword [edi + 0x10]
mov ebx, dword [edi + 0x1c]
call dword [section..00cfg]
push dword [esp + 0x10]
push dword [esp + 0x24]
push ebx
call ecx
add esp, 0xc
test eax, eax
je 0x5eb404
add eax, edi
add eax, 0x28
mov bl, byte [edi + 0x28]
mov ecx, dword [esp + 8]
jmp 0x5eb417
xor ebx, ebx
jmp 0x5eb423
mov dword [edi + 0x20], 0
mov byte [edi + 0x28], 0
xor ebx, ebx
mov ecx, dword [esp + 8]
mov eax, ecx
mov dword [edi + 0xac], eax
mov dword [edi + 0xa8], ecx
mov byte [esi], bl
cmp dword [edi + 0x10], 0
je 0x5eb45f
mov ecx, dword [edi + 0x18]
mov eax, dword [esp + 0x1c]
mov edi, dword [eax + 0x1c]
call dword [section..00cfg]
push edi
mov edi, dword [esp + 0x20]
call ecx
add esp, 4
test eax, eax
je 0x5eb467
cmp dword [edi + 0x20], 0
je 0x5eb8f2
mov ecx, dword [edi + 0xa8]
mov eax, dword [edi + 0xac]
cmp ecx, eax
jae 0x5eb8f2
cmp byte [esp + 4], 8
jne 0x5eb8e6
movzx eax, bl
or dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
inc eax
add esi, 3
cmp byte [esp + 0xc], 0
jne 0x5eb226
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x18]
and eax, 0x10
cmp eax, 1
mov eax, 4
sbb eax, 0
mov ecx, dword [esp + 0x34]
mov dword [ecx], eax
cmp dword [esp + 0x2c], 0
jle 0x5eb8af
mov eax, dword [esp + 0x14]
lea eax, [eax*4]
xor ecx, ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
imul eax, ecx
add eax, dword [esp + 0x28]
mov dword [esp + 0x24], eax
xor edx, edx
lea eax, [edx + edx*2]
mov cl, byte [esp + eax + 0x51]
test cl, cl
mov dword [esp + 0x40], edx
je 0x5eb6d8
cmp cl, 1
je 0x5eb716
cmp cl, 2
jne 0x5eb8e6
cmp dword [esp + 0x14], 0
jle 0x5eb88b
add eax, esp
add eax, 0x52
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x24]
mov ecx, dword [edi + 0xa8]
mov eax, dword [edi + 0xac]
cmp ecx, eax
mov dword [esp + 0x10], esi
jae 0x5eb53d
lea edx, [ecx + 1]
mov dword [edi + 0xa8], edx
mov cl, byte [ecx]
mov dword [esp + 4], ecx
mov ecx, edx
jmp 0x5eb5ad
cmp dword [edi + 0x20], 0
je 0x5eb57a
mov esi, dword [edi + 0x24]
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x1c]
mov dword [esp + 4], eax
call dword [section..00cfg]
push esi
push dword [esp + 0x24]
push dword [esp + 0xc]
call ecx
add esp, 0xc
test eax, eax
je 0x5eb584
add eax, edi
add eax, 0x28
mov cl, byte [edi + 0x28]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 8]
jmp 0x5eb59d
mov dword [esp + 4], 0
jmp 0x5eb5ad
mov dword [edi + 0x20], 0
mov byte [edi + 0x28], 0
mov dword [esp + 4], 0
mov ecx, dword [esp + 8]
mov eax, ecx
mov dword [edi + 0xac], eax
mov dword [edi + 0xa8], ecx
mov esi, dword [esp + 0x10]
cmp dword [edi + 0x10], 0
je 0x5eb5e3
mov ecx, dword [edi + 0x18]
mov esi, dword [edi + 0x1c]
call dword [section..00cfg]
push esi
mov esi, dword [esp + 0x14]
call ecx
add esp, 4
test eax, eax
je 0x5eb5eb
cmp dword [edi + 0x20], 0
je 0x5eb8f2
mov ecx, dword [edi + 0xa8]
mov eax, dword [edi + 0xac]
cmp ecx, eax
jae 0x5eb8f2
movzx ecx, byte [esp + 4]
test cl, cl
js 0x5eb639
cmp esi, ecx
jbe 0x5eb8f2
lea eax, [ecx + 1]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x18]
movzx eax, byte [eax]
mov dword [esp + 4], eax
inc ecx
mov esi, ecx
mov ecx, edi
mov edx, dword [esp + 4]
push ebx
call fcn.005f444c
add esp, 4
test eax, eax
je 0x5eb8fc
add ebx, 4
mov ecx, esi
dec ecx
jne 0x5eb60f
mov eax, dword [esp + 0xc]
jmp 0x5eb6c7
mov dword [esp + 0x4c], 0xffffffff
cmp cl, 0x80
jne 0x5eb64f
mov ecx, edi
call fcn.005ef9cc
jmp 0x5eb654
add ecx, 0xffffff81
mov eax, ecx
cmp eax, esi
jg 0x5eb8f2
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x18]
mov al, byte [eax]
mov byte [esp + 4], al
movzx edx, al
mov ecx, edi
lea eax, [esp + 0x4c]
push eax
call fcn.005f444c
add esp, 4
test eax, eax
je 0x5eb8fc
mov eax, dword [esp + 0xc]
test eax, eax
jle 0x5eb6cb
xor edi, edi
mov al, byte [esp + 4]
movzx ecx, al
mov edx, 0x80
xor esi, esi
test edx, ecx
je 0x5eb6a7
mov al, byte [esp + esi + 0x4c]
mov byte [ebx + esi], al
inc esi
shr edx, 1
cmp esi, 4
jne 0x5eb69c
inc edi
add ebx, 4
mov eax, dword [esp + 0xc]
cmp edi, eax
je 0x5eb6c3
mov eax, dword [esp + 0x18]
mov al, byte [eax]
jmp 0x5eb692
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
sub esi, eax
jg 0x5eb516
jmp 0x5eb88b
cmp dword [esp + 0x14], 0
jle 0x5eb88b
movzx eax, byte [esp + eax + 0x52]
mov dword [esp + 4], eax
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x24]
mov ecx, edi
mov edx, dword [esp + 4]
push ebx
call fcn.005f444c
add esp, 4
test eax, eax
je 0x5eb8fc
add ebx, 4
dec esi
jne 0x5eb6f4
jmp 0x5eb88b
cmp dword [esp + 0x14], 0
jle 0x5eb88b
add eax, esp
add eax, 0x52
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], eax
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x4c], 0xffffffff
mov ecx, dword [edi + 0xa8]
mov eax, dword [edi + 0xac]
cmp ecx, eax
jae 0x5eb761
lea edx, [ecx + 1]
mov dword [edi + 0xa8], edx
mov cl, byte [ecx]
mov dword [esp + 4], ecx
mov ecx, edx
jmp 0x5eb7cd
cmp dword [edi + 0x20], 0
je 0x5eb79e
mov esi, dword [edi + 0x24]
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x1c]
mov dword [esp + 4], eax
call dword [section..00cfg]
push esi
push dword [esp + 0x24]
push dword [esp + 0xc]
call ecx
add esp, 0xc
test eax, eax
je 0x5eb7a8
add eax, edi
add eax, 0x28
mov cl, byte [edi + 0x28]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 8]
jmp 0x5eb7c1
mov dword [esp + 4], 0
jmp 0x5eb7cd
mov dword [edi + 0x20], 0
mov byte [edi + 0x28], 0
mov dword [esp + 4], 0
mov ecx, dword [esp + 8]
mov eax, ecx
mov dword [edi + 0xac], eax
mov dword [edi + 0xa8], ecx
cmp dword [edi + 0x10], 0
je 0x5eb7ff
mov ecx, dword [edi + 0x18]
mov esi, dword [edi + 0x1c]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
test eax, eax
je 0x5eb807
cmp dword [edi + 0x20], 0
je 0x5eb8f2
mov ecx, dword [edi + 0xa8]
mov eax, dword [edi + 0xac]
cmp ecx, eax
jae 0x5eb8f2
mov eax, dword [esp + 0xc]
mov al, byte [eax]
mov byte [esp + 0x10], al
movzx edx, al
mov ecx, edi
lea eax, [esp + 0x4c]
push eax
call fcn.005f444c
add esp, 4
test eax, eax
je 0x5eb8fc
movzx eax, byte [esp + 4]
mov ecx, dword [esp + 0x18]
cmp ecx, eax
cmovb eax, ecx
movzx ecx, al
mov dword [esp + 4], ecx
test al, al
je 0x5eb87d
xor edi, edi
mov al, byte [esp + 0x10]
movzx edx, al
mov esi, 0x80
xor eax, eax
test esi, edx
je 0x5eb85f
mov cl, byte [esp + eax + 0x4c]
mov byte [ebx + eax], cl
inc eax
shr esi, 1
cmp eax, 4
jne 0x5eb854
inc edi
add ebx, 4
cmp edi, dword [esp + 4]
je 0x5eb879
mov eax, dword [esp + 0xc]
mov al, byte [eax]
jmp 0x5eb84a
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 4]
sub dword [esp + 0x18], eax
jg 0x5eb736
mov ecx, dword [esp + 0x40]
lea edx, [ecx + 1]
cmp dword [esp + 0x30], ecx
jne 0x5eb4d5
mov ecx, dword [esp + 0x3c]
inc ecx
cmp ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
jne 0x5eb4c4
mov ecx, dword [esp + 0x28]
test ecx, ecx
jne 0x5eb90b
jmp 0x5eb900
mov dword [0x7c0708], str.bad_file
jmp 0x5eb8cf
mov dword [0x7c0708], str.too_large
xor esi, esi
mov ecx, dword [esp + 0x78]
xor ecx, ebp
call fcn.006c9121
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [0x7c0708], str.bad_format
jmp 0x5eb8fc
mov dword [0x7c0708], str.bad_file
mov ecx, dword [esp + 0x28]
push ecx
call fcn.00474d80
add esp, 4
xor ecx, ecx
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x14]
mov dword [eax], esi
mov eax, dword [ebp + 8]
mov edi, dword [esp + 0x2c]
mov dword [eax], edi
mov eax, dword [ebp + 0x10]
test eax, eax
jne 0x5eb92b
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov edx, 4
push edi
push esi
push eax
call fcn.005f17d6
add esp, 0xc
mov esi, eax
jmp 0x5eb8d1