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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x58
mov esi, dword [esp + 0x74]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x78]
call 0x10110c18
pop eax
mov ebp, ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x54], eax
mov edi, esi
mov dword [esp + 0x18], esi
mov esi, esi
jmp 0x10110c3b
cmp byte [esp + 0x40], 0
je 0x10111b77
mov eax, dword [ebp + 8]
cmp esi, edx
mov dword [esp + 8], eax
je 0x10110f80
mov dword [esp + 0x18], edi
mov ebp, esi
mov esi, 0x2600
mov dword [esp + 0x10], edx
nop dword [eax]
movzx ecx, byte [ebp]
lea ebx, [ebp + 1]
movzx eax, cl
test cl, cl
js 0x10110c80
mov edi, ebx
mov edx, eax
cmp edx, 0xd
jbe 0x10110d30
jmp 0x10110d50
cmp ebx, edx
je 0x10110c92
movzx edx, byte [ebp + 1]
lea edi, [ebp + 2]
mov ebx, edi
and edx, 0x3f
jmp 0x10110c9e
mov edi, edx
mov dword [esp], ebx
xor edx, edx
mov ebx, edi
mov edi, dword [esp]
and eax, 0x1f
cmp cl, 0xdf
jbe 0x10110cc0
mov esi, edi
mov edi, dword [esp + 0x10]
cmp ebx, edi
je 0x10110cc5
movzx esi, byte [ebx]
inc ebx
mov dword [esp + 0xc], ebx
mov dword [esp], ebx
and esi, 0x3f
jmp 0x10110cce
shl eax, 6
jmp 0x10110cfc
mov dword [esp], esi
xor esi, esi
mov dword [esp + 0xc], edi
shl edx, 6
or edx, esi
cmp cl, 0xf0
jb 0x10110ced
mov ebx, dword [esp + 0xc]
cmp ebx, dword [esp + 0x10]
je 0x10110d05
movzx ecx, byte [ebx]
inc ebx
mov edi, ebx
and ecx, 0x3f
jmp 0x10110d0a
mov ebx, dword [esp + 0xc]
mov edi, dword [esp]
shl eax, 0xc
mov esi, 0x2600
or edx, eax
cmp edx, 0xd
jbe 0x10110d30
jmp 0x10110d50
mov edi, dword [esp]
xor ecx, ecx
and eax, 7
shl edx, 6
mov esi, 0x2600
shl eax, 0x12
or edx, eax
or edx, ecx
cmp edx, 0xd
ja 0x10110d50
nop word cs:[eax + eax]
nop
bt esi, edx
jae 0x10110d50
mov edx, dword [esp + 0x10]
mov ebp, ebx
cmp ebx, edx
jne 0x10110c60
jmp 0x10110f70
cmp edx, 0x110000
mov dword [esp + 0xc], ebx
je 0x10110f90
mov eax, dword [esp + 0x78]
mov esi, 1
sub eax, ebp
cmp edx, 0x80
jb 0x10110d8e
mov esi, 2
cmp edx, 0x800
jb 0x10110d8e
cmp edx, 0x10000
mov esi, 4
sbb esi, 0
cmp eax, esi
je 0x10110da3
jbe 0x10111dd1
cmp byte [ebp + esi], 0xbf
jle 0x10111dd1
cmp edx, 0x3e
mov dword [esp], edi
jg 0x10110dc4
cmp edx, 0x23
je 0x10110de4
cmp edx, 0x2f
jne 0x10110df2
mov eax, dword [esp + 4]
cmp byte [eax + 0x20], 2
je 0x10110df2
jmp 0x1011181b
cmp edx, 0x3f
je 0x10110de4
cmp edx, 0x5c
jne 0x10110df2
cmp byte [esp + 0x3c], 2
je 0x10110df2
mov eax, dword [esp + 4]
cmp byte [eax + 0x20], 2
je 0x10110df2
jmp 0x10111802
mov eax, dword [esp + 4]
cmp byte [eax + 0x20], 0
je 0x10111783
mov edi, dword [esp + 4]
mov ecx, edi
push dword [esp + 0x78]
push dword [esp + 4]
call fcn.10114760
add esp, 8
cmp byte [edi + 0x20], 2
jne 0x10110e80
cmp byte [esp + 0x3c], 2
jne 0x10110edd
lea ebx, [esp + 0x20]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], 0x1044a84c
mov ecx, ebx
call fcn.1004b180
mov edi, dword [esp + 4]
test eax, eax
je 0x10110f40
mov ebp, eax
mov esi, edx
nop dword [eax + eax]
mov ecx, edi
mov edx, esi
call fcn.10116c80
mov eax, dword [edi]
add eax, dword [edi + 8]
push esi
push ebp
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add dword [edi + 8], esi
mov ecx, ebx
call fcn.1004b180
mov ebp, eax
mov esi, edx
test eax, eax
jne 0x10110e50
jmp 0x10110f40
lea ebx, [esp + 0x20]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], 0x1044a83c
mov ecx, ebx
call fcn.1004b180
mov edi, dword [esp + 4]
test eax, eax
je 0x10110f40
mov ebp, eax
mov esi, edx
nop dword [eax + eax]
mov ecx, edi
mov edx, esi
call fcn.10116c80
mov eax, dword [edi]
add eax, dword [edi + 8]
push esi
push ebp
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add dword [edi + 8], esi
mov ecx, ebx
call fcn.1004b180
mov ebp, eax
mov esi, edx
test eax, eax
jne 0x10110eb0
jmp 0x10110f40
lea ebx, [esp + 0x20]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], 0x1044a85c
mov ecx, ebx
call fcn.1004b180
mov edi, dword [esp + 4]
test eax, eax
je 0x10110f40
mov ebp, eax
mov esi, edx
nop dword [eax + eax]
mov ecx, edi
mov edx, esi
call fcn.10116c80
mov eax, dword [edi]
add eax, dword [edi + 8]
push esi
push ebp
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add dword [edi + 8], esi
mov ecx, ebx
call fcn.1004b180
mov ebp, eax
mov esi, edx
test eax, eax
jne 0x10110f10
nop
mov eax, dword [esp + 0x78]
mov esi, dword [esp + 0xc]
cmp esi, eax
mov edx, eax
mov eax, dword [esp]
mov dword [esp + 0x18], esi
jne 0x10110c4e
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x18], eax
mov edi, ebx
mov dword [esp + 0xc], ebx
jmp 0x10110f98
mov dword [esp + 0x18], edi
mov edi, edx
mov dword [esp + 0xc], edx
jmp 0x10110f94
mov dword [esp + 0xc], esi
mov ebx, esi
jmp 0x10110fa0
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x78]
mov eax, dword [esp + 8]
mov ebp, dword [esp + 4]
mov esi, dword [ebp]
mov ebp, dword [ebp + 8]
mov dword [esp], edi
cmp ebp, eax
jb 0x10111dbd
test eax, eax
je 0x10110fc9
cmp ebp, eax
je 0x10110fc9
jbe 0x10111dbd
cmp byte [esi + eax], 0xbf
jle 0x10111dbd
sub ebp, eax
lea edi, [esp + 0x20]
js 0x10111dca
test ebp, ebp
je 0x10111010
call sub.KERNEL32.dll_GetProcessHeap
push ebp
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10111de7
mov ecx, edi
mov edx, ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], 0
jmp 0x1011102c
mov dword [esp + 0x20], 1
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov ecx, edi
xor edx, edx
call fcn.10116c80
mov eax, dword [esp + 0x20]
add esi, dword [esp + 8]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x14], eax
add eax, edi
push ebp
push esi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0xc]
add edi, ebp
mov dword [esp + 0x40], 0
mov edx, ebx
mov dword [esp + 0x48], eax
dec edi
cmp edi, 5
ja 0x10111604
mov eax, dword [edi*4 + 0x10111ea0]
mov ebp, dword [esp + 4]
mov edi, dword [esp]
add eax, dword [esp + 0x54]
jmp eax
mov ebp, dword [esp + 4]
mov edi, dword [esp]
nop dword [eax + eax]
cmp dword [esp + 0x48], 0
je 0x10110c30
mov ebx, edi
mov edi, edx
call sub.KERNEL32.dll_GetProcessHeap
push dword [esp + 0x14]
push 0
push eax
call sub.KERNEL32.dll_HeapFree
mov edx, edi
mov edi, ebx
jmp 0x10110c30
mov eax, dword [esp + 0x18]
mov edi, eax
mov dword [esp + 0xc], eax
jmp 0x10110f94
mov esi, dword [esp + 4]
mov eax, dword [esi + 0x18]
test eax, eax
je 0x1011181f
mov ecx, dword [esi + 0x1c]
push 0
push eax
call dword [ecx + 0xc]
add esp, 8
jmp 0x1011181f
mov esi, dword [esp + 4]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 4]
jne 0x10111836
mov ecx, esi
mov edx, 1
call fcn.10116c80
mov eax, dword [esi + 8]
mov ecx, dword [esi]
mov byte [ecx + eax], 0x2f
mov ebp, dword [esi + 8]
mov eax, dword [esp + 8]
mov ebx, dword [esi]
lea edx, [ebp + 1]
cmp ebp, eax
mov dword [esi + 8], edx
jb 0x10111e72
test eax, eax
lea esi, [esp + 0x20]
je 0x1011186f
cmp edx, eax
je 0x1011186f
jbe 0x10111e72
cmp byte [ebx + eax], 0xbf
jle 0x10111e72
test ebp, ebp
je 0x10111886
cmp ebp, 0xffffffff
je 0x10111e6d
cmp byte [ebx + ebp], 0xbf
jle 0x10111e72
sub ebp, eax
js 0x10111dca
test ebp, ebp
je 0x101118be
call sub.KERNEL32.dll_GetProcessHeap
push ebp
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10111de7
mov ecx, esi
mov edx, ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], 0
jmp 0x101118da
mov dword [esp + 0x20], 1
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov ecx, esi
xor edx, edx
call fcn.10116c80
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
add ebx, dword [esp + 8]
mov dword [esp + 0x14], eax
add eax, edi
push ebp
push ebx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x24]
mov ecx, dword [esp]
mov edx, dword [esp + 0x78]
mov esi, dword [esp + 0xc]
add edi, ebp
mov dword [esp + 0x48], eax
mov al, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x40], eax
jmp 0x10111066
cmp byte [esp + 0x3c], 0
jne 0x10111d83
mov esi, dword [esp + 0x70]
mov edi, dword [ebp]
mov edx, dword [ebp + 8]
test esi, esi
je 0x10111ba4
cmp edx, esi
je 0x10111ba4
jbe 0x10111e83
cmp byte [edi + esi], 0xc0
jl 0x10111e83
cmp edx, esi
jb 0x10111e97
test esi, esi
je 0x10111bdc
mov ebp, edx
sub ebp, esi
js 0x10111dca
test ebp, ebp
je 0x10111c18
call sub.KERNEL32.dll_GetProcessHeap
push ebp
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10111de7
mov ecx, eax
mov dword [esp + 0x14], ebp
jmp 0x10111c25
mov eax, dword [esp + 4]
mov ebp, dword [eax + 4]
test ebp, ebp
js 0x10111dca
xor ebx, ebx
test ebp, ebp
mov esi, edx
mov dword [esp + 0x14], ebp
je 0x10111d93
call sub.KERNEL32.dll_GetProcessHeap
push ebp
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10111de7
mov ecx, ebp
jmp 0x10111d9a
mov dword [esp + 0x14], 0
mov ecx, 1
mov eax, dword [esp + 4]
add edi, esi
mov dword [eax + 8], esi
push ebp
push edi
mov edi, eax
mov dword [esp + 0x18], ecx
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [edi + 4]
mov ebx, dword [edi + 8]
mov esi, ebp
cmp ebx, ecx
jne 0x10111c5a
mov ecx, edi
mov edx, 1
call fcn.10116c80
mov ebx, dword [edi + 8]
mov eax, dword [edi]
xor ecx, ecx
mov byte [eax + ebx], 0x2f
inc dword [edi + 8]
mov dword [esp + 0xc], esi
mov ebp, dword [esp + 0x10]
lea eax, [ebp + esi]
mov dword [esp], eax
jmp 0x10111c99
mov ebp, ebx
mov ecx, eax
sub ecx, edx
add ecx, edi
cmp ebp, 0x2f
mov edi, dword [esp + 4]
mov ebp, dword [esp + 0x10]
jne 0x10111d4a
cmp ecx, esi
je 0x10111d48
lea edx, [ebp + ecx]
mov eax, ecx
movzx ecx, byte [edx]
lea edi, [edx + 1]
movzx ebx, cl
test cl, cl
jns 0x10111c80
mov esi, dword [esp]
cmp edi, esi
je 0x10111cc9
movzx ebp, byte [edx + 1]
lea edi, [edx + 2]
mov esi, edi
and ebp, 0x3f
jmp 0x10111ccb
xor ebp, ebp
and ebx, 0x1f
cmp cl, 0xdf
jbe 0x10111ce7
cmp esi, dword [esp]
je 0x10111cec
movzx edi, byte [esi]
inc esi
and edi, 0x3f
mov dword [esp + 8], edi
mov edi, esi
jmp 0x10111cf7
shl ebx, 6
jmp 0x10111d16
mov esi, dword [esp]
mov dword [esp + 8], 0
shl ebp, 6
add ebp, dword [esp + 8]
cmp cl, 0xf0
jb 0x10111d13
cmp esi, dword [esp]
je 0x10111d21
movzx ecx, byte [esi]
inc esi
mov edi, esi
and ecx, 0x3f
jmp 0x10111d23
shl ebx, 0xc
mov esi, dword [esp + 0xc]
or ebp, ebx
jmp 0x10111c82
xor ecx, ecx
and ebx, 7
mov esi, dword [esp + 0xc]
shl ebp, 6
shl ebx, 0x12
or ebp, ebx
or ebp, ecx
cmp ebp, 0x110000
jne 0x10111c82
mov edi, dword [esp + 4]
mov ebp, dword [esp + 0x10]
mov eax, esi
mov ebx, esi
mov ecx, edi
lea esi, [ebp + eax]
sub ebx, eax
mov edx, ebx
call fcn.10116c80
mov eax, dword [edi]
add eax, dword [edi + 8]
push ebx
push esi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add dword [edi + 8], ebx
cmp dword [esp + 0x14], 0
je 0x10111d83
call sub.KERNEL32.dll_GetProcessHeap
push ebp
push 0
push eax
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x78]
add esp, 0x58
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, 1
xor ecx, ecx
mov edx, dword [esp + 4]
mov dword [esp + 0x10], edi
mov edi, edx
mov dword [edx], eax
mov dword [edx + 4], ecx
mov dword [edx + 8], 0
cmp ebx, ecx
je 0x10111c4b
jmp 0x10111c5a
mov ecx, esi
mov edx, ebp
push 0x1044a86c
push ebp
push eax
jmp 0x10111ddd
call fcn.10006550
ud2
mov ecx, ebp
mov edx, eax
push 0x1044a544
push esi
push 0
call fcn.10008e00
add esp, 0xc
ud2
mov ecx, ebp
mov edx, 1
call fcn.10006540
ud2
call fcn.100082b0
add esp, 4
ud2
mov ebp, 0xffffffff
mov ecx, ebx
push 0x1044a87c
push ebp
push dword [esp + 0x10]
jmp 0x10111ddd
mov ecx, str.assertion_failed:_self.is_char_boundary_at_
mov edx, 0x2b
push 0x1044a908
jmp 0x10111e0a
mov ecx, esi
call fcn.10006ed0
ud2