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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x40]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [eax + 4]
push dword [eax]
push ecx
call fcn.10182f70
add esp, 0x14
cmp dword [esp + 0x40], 0
je 0x10131edf
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
mov ebx, dword [esp + 0x7c]
cmp ecx, 0xffffffff
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], eax
je 0x10131ef1
mov edi, dword [esp + 0x5c]
lea ecx, [edi + ebx - 1]
cmp ecx, esi
jae 0x10131f54
lea edx, [ebx - 1]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x34], esi
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x50]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x18], edx
mov edx, ebx
sub edx, dword [esp + 0x18]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 8]
neg edx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x2c], edx
nop word cs:[eax + eax]
nop dword [eax + eax]
movzx ecx, byte [eax + ecx]
xor eax, eax
mov edx, 1
shld eax, edx, cl
shl edx, cl
test cl, 0x20
mov ecx, 0
cmovne eax, edx
cmovne edx, ecx
mov ecx, dword [esp + 0x30]
and eax, dword [esp + 0x2c]
and edx, ecx
or edx, eax
je 0x10131e50
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 8]
mov dword [esp + 4], edi
cmp ecx, eax
mov edx, eax
mov eax, dword [esp + 0xc]
cmova edx, ecx
cmp edx, ebx
mov ecx, edx
mov dword [esp + 0x24], edx
cmova ebx, edx
add eax, edi
cmp ebx, ecx
je 0x10131e80
mov edx, dword [esp + 4]
lea edi, [edx + ecx]
cmp edi, esi
jae 0x1013218b
mov edx, dword [esp + 0x14]
lea edi, [ecx + 1]
movzx edx, byte [edx + ecx]
cmp dl, byte [eax + ecx]
mov ecx, edi
je 0x10131e10
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x10], 0
add eax, dword [esp + 0x1c]
add eax, edi
mov edx, eax
jmp 0x10131e5c
mov edx, edi
mov dword [esp + 0x10], 0
add edx, ebx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x28]
mov edi, edx
add ecx, edx
cmp ecx, esi
jb 0x10131dc0
jmp 0x10131f54
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0x20]
nop dword [eax]
cmp dword [esp + 0x10], ecx
jae 0x1013204f
dec ecx
cmp ecx, ebx
jae 0x10132198
mov edi, edx
lea eax, [ecx + edx]
mov edx, dword [esp + 0x34]
cmp eax, edx
jae 0x101321a9
mov edx, dword [esp + 0x14]
mov esi, ebx
mov ebx, dword [esp + 0xc]
movzx edx, byte [edx + ecx]
cmp dl, byte [ebx + eax]
mov eax, ebx
mov ebx, esi
mov edx, edi
je 0x10131e90
mov ecx, dword [esp + 0x38]
add edx, dword [esp + 0x18]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x10], ecx
jmp 0x10131e60
xor eax, eax
cmp byte [esp + 0x4e], 0
je 0x10132060
jmp 0x10132054
mov eax, dword [esp + 0x5c]
lea ecx, [eax + ebx - 1]
cmp ecx, esi
jae 0x10131f54
mov dword [esp + 4], eax
lea eax, [ebx - 1]
mov edi, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x48]
cmp edi, ebx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
mov eax, ebx
cmova eax, edi
mov dword [esp + 0x10], eax
lea eax, [edi - 1]
cmp eax, ebx
mov dword [esp + 0x24], eax
jae 0x101321c4
mov eax, dword [esp + 0x58]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x34], esi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x14]
lea eax, [eax + edi - 1]
mov dword [esp + 0x18], eax
jmp 0x10131f7a
xor eax, eax
jmp 0x10132054
mov ecx, dword [esp + 4]
add ecx, ebx
mov eax, dword [esp + 0x28]
mov dword [esp + 4], ecx
add ecx, eax
xor eax, eax
cmp ecx, esi
jae 0x10132054
mov eax, dword [esp + 0xc]
mov edx, 1
movzx ecx, byte [eax + ecx]
xor eax, eax
shld eax, edx, cl
shl edx, cl
test cl, 0x20
mov ecx, 0
cmovne eax, edx
cmovne edx, ecx
and eax, dword [esp + 0x2c]
and edx, dword [esp + 0x30]
or edx, eax
je 0x10131f60
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xc]
mov ebx, edi
mov eax, ecx
mov dword [esp + 4], ecx
add ecx, edx
neg eax
nop dword [eax]
cmp dword [esp + 0x10], ebx
je 0x10131ff2
mov edx, dword [esp + 4]
add edx, ebx
cmp edx, esi
jae 0x1013227b
mov edx, dword [esp + 0x14]
dec eax
movzx edx, byte [edx + ebx]
cmp dl, byte [ecx + ebx]
lea ebx, [ebx + 1]
je 0x10131fc0
mov ebx, dword [esp + 0x20]
neg eax
mov ecx, eax
jmp 0x10131f66
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 4]
mov ebx, edi
add eax, ecx
mov ecx, dword [esp + 0x18]
nop word cs:[eax + eax]
nop dword [eax]
sub ebx, 1
jb 0x1013204f
cmp eax, esi
jae 0x101321ba
movzx edx, byte [ecx]
mov esi, edi
mov edi, dword [esp + 0xc]
dec ecx
mov byte [esp + 8], dl
movzx edx, byte [esp + 8]
cmp dl, byte [edi + eax]
mov edi, esi
mov esi, dword [esp + 0x34]
lea eax, [eax - 1]
je 0x10132010
mov ecx, dword [esp + 4]
mov ebx, dword [esp + 0x20]
add ecx, dword [esp + 0x1c]
jmp 0x10131f66
mov eax, 1
mov edx, dword [esp + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, dword [esp + 0x74]
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x70]
movzx ebx, byte [esp + 0x4c]
test edx, edx
mov eax, esi
je 0x1013208e
mov eax, esi
sub eax, edx
jbe 0x10132088
cmp byte [ecx + edx], 0xc0
jge 0x1013208e
jmp 0x101322ba
jne 0x101322ba
test eax, eax
mov dword [esp + 4], edx
je 0x101320e3
mov bh, byte [ecx + edx]
movzx edi, bh
test bh, bh
jns 0x10132104
mov eax, ecx
movzx ecx, byte [ecx + edx + 1]
and edi, 0x1f
and ecx, 0x3f
cmp bh, 0xe0
jb 0x101320f2
mov dword [esp + 0x14], eax
movzx eax, byte [eax + edx + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp bh, 0xf0
jb 0x101320fb
mov ecx, dword [esp + 0x14]
and edi, 7
shl eax, 6
shl edi, 0x12
movzx edx, byte [ecx + edx + 3]
and edx, 0x3f
or edx, eax
or edi, edx
jmp 0x10132104
mov eax, 1
test bl, bl
jne 0x10132054
jmp 0x10132119
shl edi, 6
or edi, ecx
mov ecx, eax
jmp 0x10132104
mov ecx, dword [esp + 0x14]
shl edi, 0xc
or edi, eax
mov eax, 1
test bl, bl
jne 0x10132054
cmp edi, 0x110000
jne 0x10132120
xor eax, eax
jmp 0x10132054
cmp edi, 0x80
jb 0x10132143
mov eax, 2
cmp edi, 0x800
jb 0x10132143
cmp edi, 0x10000
mov eax, 4
sbb eax, 0
mov edi, dword [esp + 4]
add edi, eax
je 0x1013215c
mov edx, esi
sub edx, edi
jbe 0x10132160
cmp byte [ecx + edi], 0xc0
jge 0x10132166
jmp 0x101322b8
mov edx, esi
jmp 0x10132166
jne 0x101322b8
mov eax, 1
test edx, edx
mov dword [esp + 4], edi
je 0x10132054
movzx ecx, byte [ecx + edi]
test cl, cl
jns 0x10132054
cmp cl, 0xe0
jmp 0x10132054
mov eax, dword [esp + 0x24]
add eax, dword [esp + 4]
jmp 0x10132281
push 0x10236764
push ebx
push ecx
call fcn.101af280
add esp, 0xc
ud2
push 0x10236774
push edx
push eax
call fcn.101af280
add esp, 0xc
ud2
push 0x10236774
jmp 0x1013228b
mov eax, dword [esp + 0xc]
add eax, edi
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xc]
mov edx, 1
movzx ecx, byte [eax + ecx]
xor eax, eax
shld eax, edx, cl
shl edx, cl
test cl, 0x20
mov ecx, 0
cmovne eax, edx
cmovne edx, ecx
mov ecx, dword [esp + 0x10]
and eax, dword [esp + 0x2c]
and edx, dword [esp + 0x30]
or edx, eax
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 4]
mov dword [esp + 0x1c], eax
mov dword [esp + 8], edx
je 0x1013225b
cmp edi, ecx
mov dword [esp + 0x18], ecx
je 0x10132297
mov eax, dword [esp + 8]
lea edx, [edi + eax]
cmp edx, esi
jae 0x1013227b
mov ecx, dword [esp + 0x1c]
dec dword [esp + 0x18]
movzx edx, byte [ecx + edi]
inc ecx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 8]
mov byte [esp + 0x38], dl
mov edx, dword [esp + 0x3c]
movzx eax, byte [esp + 0x38]
cmp al, byte [edx + ecx]
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x18]
lea edx, [edx + 1]
mov dword [esp + 8], edx
je 0x10132210
jmp 0x10132261
mov edx, dword [esp + 4]
add edx, ebx
mov eax, dword [esp + 0x28]
mov dword [esp + 4], edx
lea ecx, [edx + eax]
xor eax, eax
cmp ecx, esi
jb 0x101321ce
jmp 0x10132054
mov eax, dword [esp + 4]
add eax, edi
cmp esi, eax
cmova eax, esi
push 0x10236754
push esi
push eax
call fcn.101af280
add esp, 0xc
ud2
mov eax, 1
test edi, edi
je 0x10132054
push 0x10236764
push ebx
push dword [esp + 0x2c]
call fcn.101af280
add esp, 0xc
ud2
mov edx, edi
push 0x10236784
push esi
push edx
push esi
push ecx
call fcn.101af790
add esp, 0x14
ud2