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

Disassembly:
sub esp, 0x38
movsd xmm0, qword [esp + 0x44]
push ebx
mov ebx, dword [esp + 0x50]
push ebp
push esi
mov esi, dword [esp + 0x48]
push edi
mov edi, dword [esp + 0x50]
push ecx
push ecx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x4c], esi
movsd qword [esp], xmm0
call fcn.10026ddc
mov ebp, eax
or eax, edx
pop ecx
pop ecx
mov dword [esp + 0x24], ebp
jne 0x100265e2
xor ecx, ecx
mov eax, edi
test ebx, ebx
setne cl
sub eax, esi
add ecx, 5
add ecx, ebx
cmp eax, ecx
jge 0x100265b0
mov edx, 0x84
mov eax, edi
jmp 0x10026ba4
mov byte [esi], 0x30
inc esi
test ebx, ebx
je 0x100265ca
push ebx
mov byte [esi], 0x2e
inc esi
push 0x30
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
add esi, ebx
push 4
push str.e00
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea eax, [esi + 4]
jmp 0x10026ba2
mov ecx, edx
mov dword [esp + 0x28], 9
and ecx, 0xfffff
shr edx, 0x14
mov dword [esp + 0x20], ecx
test edx, edx
jne 0x1002661c
inc ebx
mov eax, 0xfffffbce
xor ecx, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], ecx
mov ebp, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], ecx
jmp 0x10026865
lea eax, [edx - 0x433]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x4c], eax
or ecx, 0x100000
mov edi, dword [esp + 0x4c]
inc ebx
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x30], ecx
xor ecx, ecx
cmp dword [esp + 0x4c], 0xffffffcc
mov eax, ecx
mov dword [esp + 0x24], edi
mov edx, ecx
mov edi, dword [esp + 0x30]
mov ebp, ecx
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x50]
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], ecx
jl 0x10026810
mov eax, dword [esp + 0x4c]
test eax, eax
jns 0x10026686
push 0x78
inc edx
mov dword [esp + 0x3c], ecx
pop eax
mov dword [esp + 0x28], edx
jmp 0x100266d9
lea edx, [eax + 0xf]
shr edx, 4
mov eax, edx
mov dword [esp + 0x38], edx
shl eax, 4
add eax, 0x78
mov dword [esp + 0x3c], eax
imul eax, edx, 0x134410
xor edx, edx
shr eax, 0x12
add eax, 0x19
div dword [esp + 0x28]
mov edx, eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x1c], eax
sub edx, 1
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x28], edx
mov dword [esp + 0x20], eax
js 0x1002680a
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x4c]
sub eax, ecx
mov ebp, dword [esp + 0x30]
add eax, 8
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x2c]
mov edi, eax
mov dword [esp + 0x4c], ebp
shld dword [esp + 0x4c], edi, 8
mov dword [esp + 0x1c], ecx
shl edi, 8
mov dword [esp + 0x2c], edi
imul edi, edx, 9
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], ebp
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x50]
mov eax, dword [esp + 0x38]
push dword [esp + 0x3c]
movzx eax, word [eax*2 + 0x100c6370]
add eax, edx
imul eax, eax, 0x18
add eax, 0x1012f2d8
push eax
push dword [esp + 0x54]
push dword [esp + 0x38]
call fcn.100276fa
mov edx, dword [esp + 0x28]
add esp, 0x10
mov dword [esp + 0x10], eax
test edx, edx
je 0x1002677b
lea ebp, [edx + 9]
push 9
cmp ebp, ebx
ja 0x100267fb
mov ecx, edi
sub ecx, esi
pop edx
cmp ecx, edx
jl 0x100265a4
push esi
push eax
call fcn.1001fbce
pop ecx
pop ecx
push 9
pop eax
add esi, eax
xor ecx, ecx
jmp 0x100267d6
xor ecx, ecx
mov ebp, ecx
test eax, eax
je 0x100267e2
push eax
call fcn.10026cc8
mov ebp, eax
mov eax, dword [esp + 0x34]
dec eax
add eax, ebp
mov dword [esp + 0x18], eax
pop ecx
cmp ebp, ebx
ja 0x10026802
cmp dword [esp + 0x34], 0
jbe 0x100267c3
mov ecx, edi
lea eax, [ebp + 1]
sub ecx, esi
cmp ecx, eax
jl 0x100265a4
push esi
push dword [esp + 0x14]
push ebp
call fcn.10025711
add esp, 0xc
add esi, ebp
jmp 0x100267d3
cmp esi, edi
je 0x100265a4
mov al, byte [esp + 0x10]
add al, 0x30
mov byte [esi], al
xor ecx, ecx
inc esi
mov eax, dword [esp + 0x10]
mov edx, ebp
mov ebp, ecx
mov dword [esp + 0x18], edx
dec dword [esp + 0x28]
sub dword [esp + 0x30], 9
cmp dword [esp + 0x28], 0
jl 0x10026810
mov edx, dword [esp + 0x28]
jmp 0x10026718
pop ecx
mov ebp, ecx
xor ecx, ecx
jmp 0x10026810
mov edx, dword [esp + 0x18]
xor ecx, ecx
jmp 0x1002680c
mov edx, ecx
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x1c], 0
mov dword [esp + 0x4c], ebp
jge 0x100269b4
mov edi, dword [esp + 0x24]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x18], edx
mov edx, ebp
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x50]
mov dword [esp + 0x20], eax
test edx, edx
jne 0x100269b4
mov eax, dword [esp + 0x1c]
cdq
and edx, 0xf
add eax, edx
sar eax, 4
neg eax
mov dword [esp + 0x2c], eax
movzx edx, byte [eax + 0x100c6480]
mov dword [esp + 0x4c], edx
cmp edx, 0xc8
jae 0x100269b4
imul edx, edx, 9
mov dword [esp + 0x30], edx
movzx edx, word [eax*2 + 0x100c63f0]
movzx eax, byte [eax + 0x100c6480]
sub edx, eax
mov eax, dword [esp + 0x2c]
add edx, dword [esp + 0x4c]
movzx eax, word [eax*2 + 0x100c63f2]
cmp edx, eax
jae 0x100268ea
mov ecx, dword [esp + 0x24]
push 8
pop eax
sub eax, dword [esp + 0x2c]
shl eax, 4
sub eax, dword [esp + 0x1c]
push eax
imul eax, edx, 0x18
add eax, 0x10136598
push eax
mov eax, dword [esp + 0x28]
shld eax, ecx, 8
shl ecx, 8
push eax
push ecx
call fcn.100276fa
add esp, 0x10
mov ecx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x10], ecx
test eax, eax
je 0x1002694d
add eax, 9
mov dword [esp + 0x3c], eax
push 9
cmp eax, ebx
ja 0x100269b1
mov eax, edi
sub eax, esi
pop edx
cmp eax, edx
jl 0x100265a4
push esi
push ecx
call fcn.1001fbce
pop ecx
pop ecx
push 9
pop eax
add esi, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x18], eax
xor ecx, ecx
mov eax, dword [esp + 0x30]
inc dword [esp + 0x4c]
push 9
pop edx
add eax, edx
mov dword [esp + 0x30], eax
cmp eax, 0x708
jge 0x100269b4
mov eax, dword [esp + 0x2c]
jmp 0x10026892
test ecx, ecx
je 0x1002692a
push ecx
call fcn.10026cc8
pop ecx
mov ebp, eax
sub eax, dword [esp + 0x30]
push 0xa
pop ecx
sub eax, ecx
mov dword [esp + 0x14], eax
cmp ebp, ebx
ja 0x100269b4
cmp dword [esp + 0x34], 0
jbe 0x10026993
mov ecx, edi
lea eax, [ebp + 1]
sub ecx, esi
cmp ecx, eax
jl 0x100265a4
push esi
push dword [esp + 0x14]
push ebp
call fcn.10025711
add esp, 0xc
add esi, ebp
jmp 0x100269a3
cmp esi, edi
je 0x100265a4
mov al, byte [esp + 0x10]
add al, 0x30
mov byte [esi], al
xor ecx, ecx
mov dword [esp + 0x18], ebp
mov ebp, ecx
inc esi
jmp 0x1002692c
pop eax
mov ebp, eax
mov ecx, ebx
xor edx, edx
sub ecx, dword [esp + 0x18]
test ebp, ebp
push 5
cmovne edx, dword [esp + 0x14]
and dword [esp + 0x3c], 0
mov eax, edx
mov dword [esp + 0x50], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x40], edx
pop eax
cmp ebp, ecx
jbe 0x10026a6f
sub ebp, ecx
je 0x10026a73
push 0xa
mov eax, edx
pop ecx
xor edx, edx
div ecx
mov edi, edx
mov dword [esp + 0x38], edi
sub ebp, 1
jne 0x100269ee
mov ecx, dword [esp + 0x28]
push 5
mov dword [esp + 0x50], eax
pop eax
cmp edi, eax
mov edi, dword [esp + 0x50]
jne 0x10026a6f
sub ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
add eax, ebx
neg eax
test eax, eax
jle 0x10026a3f
cmp eax, 0x3c
jge 0x10026a3b
push eax
push ebp
push dword [esp + 0x2c]
call fcn.100278d5
add esp, 0xc
test al, al
jne 0x10026a3f
xor al, al
jmp 0x10026a41
mov al, 1
test ebx, ebx
jns 0x10026a61
test al, al
je 0x10026a5f
push ebp
push dword [esp + 0x28]
call fcn.10027966
neg ebx
pop ecx
pop ecx
cmp eax, ebx
jb 0x10026a5f
mov al, 1
jmp 0x10026a61
xor al, al
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x4c]
movzx ebp, al
inc ebp
jmp 0x10026a7b
mov edx, dword [esp + 0x4c]
cmp eax, dword [esp + 0x38]
sbb ebp, ebp
neg ebp
cmp dword [esp + 0x18], 0
je 0x10026aae
mov eax, edi
sub eax, esi
cmp eax, ecx
jl 0x100265a4
test edx, edx
jne 0x10026a9d
push ecx
push 0x30
push esi
call sub.VCRUNTIME140.dll_memset
jmp 0x10026aa5
push esi
push edx
push ecx
call fcn.1001fa78
add esp, 0xc
add esi, dword [esp + 0x28]
jmp 0x10026ae6
cmp dword [esp + 0x34], 0
jbe 0x10026ad8
mov ebx, dword [esp + 0x28]
mov ecx, edi
sub ecx, esi
lea eax, [ebx + 1]
cmp ecx, eax
jl 0x100265a4
push esi
push edx
push ebx
call fcn.10025711
inc esi
add esp, 0xc
add esi, ebx
jmp 0x10026ae6
cmp esi, edi
je 0x100265a4
add dl, 0x30
mov byte [esi], dl
inc esi
test ebp, ebp
je 0x10026b27
mov edx, dword [esp + 0x44]
mov eax, esi
cmp esi, edx
je 0x10026b0b
dec eax
mov cl, byte [eax]
cmp cl, 0x2e
je 0x10026b07
cmp cl, 0x39
jne 0x10026b19
xor ebp, ebp
mov byte [eax], 0x30
inc ebp
cmp eax, edx
jne 0x10026af4
mov byte [eax], 0x31
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
jmp 0x10026b2b
cmp ebp, 1
je 0x10026b23
test cl, 1
je 0x10026b27
inc cl
mov byte [eax], cl
mov eax, dword [esp + 0x14]
cdq
mov ecx, edi
xor eax, edx
sub eax, edx
xor edx, edx
cmp eax, 0x64
setge dl
sub ecx, esi
add edx, 4
cmp ecx, edx
jl 0x100265a4
cmp dword [esp + 0x14], 0
mov byte [esi], 0x65
setl cl
lea ecx, [ecx*2 + 0x2b]
mov byte [esi + 1], cl
add esi, 2
cmp eax, 0x64
jl 0x10026b8a
push 0xa
pop ecx
cdq
idiv ecx
push 2
mov ebx, edx
lea eax, [eax*2 + 0x100c62a8]
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add bl, 0x30
add esp, 0xc
mov byte [esi + 2], bl
add esi, 3
jmp 0x10026ba0
push 2
lea eax, [eax*2 + 0x100c62a8]
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 2
mov eax, esi
xor edx, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret