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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x17c
mov eax, dword [0x1040e140]
xor eax, esp
mov dword [esp + 0x178], eax
push ebx
mov ebx, dword [ebp + 8]
xorps xmm0, xmm0
push esi
push edi
mov edi, ecx
mov dword [esp + 0x18], edx
mov edx, dword [ebp + 0xc]
push 0x110
push 0
mov eax, dword [edi + 0x44]
sub eax, dword [edi + 0x40]
sar eax, 3
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x74]
push eax
mov dword [esp + 0x18], edx
movq qword [esp + 0x40], xmm0
movq qword [esp + 0x68], xmm0
mov dword [esp + 0x70], 0
call fcn.102e2930
mov edx, dword [ebp + 0x10]
add esp, 0xc
mov eax, edx
mov dword [esp + 0x44], edx
and eax, 1
mov dword [esp + 0x20], edi
mov dword [esp + 0x48], eax
mov ecx, edx
mov eax, edx
mov dword [esp + 0x3c], 0xffffffff
mov esi, edx
mov dword [esp + 0x68], 0x9b
and eax, 4
and ecx, 2
and esi, 8
mov dword [esp + 0x4c], ecx
and edx, 0xc
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], edx
test eax, eax
je 0x10064044
movaps xmm0, xmmword [str.:__tuwv]
or ecx, 0xf0
shr ecx, 1
mov dword [esp + 0x78], ecx
jmp 0x10064057
test esi, esi
je 0x1006405c
movaps xmm0, xmmword [0x103e3e20]
mov dword [esp + 0x78], 0x78
movups xmmword [esp + 0x68], xmm0
test edx, edx
jne 0x10064068
mov dword [esp + 0x64], 0x302
push 1
mov edx, 0x80
mov ecx, edi
call fcn.10051880
mov edx, dword [edi + 0x44]
add esp, 4
mov ecx, edi
mov eax, dword [edx - 8]
mov dword [esp + 0x30], eax
mov eax, dword [eax + 0x14]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
sub eax, 0xffffff80
mov dword [esp + 0x2c], eax
cmp edx, dword [edi + 0x38]
jae 0x1006456d
push 0x28
mov edx, 0x8004080
call fcn.1006e9a0
mov ecx, dword [edi + 0x44]
xor edx, edx
or edx, 0xfff90000
add esp, 4
mov dword [ecx], eax
mov dword [ecx + 4], edx
inc dword [eax + 4]
add dword [edi + 0x44], 8
mov ecx, dword [edi + 0x44]
mov edx, dword [edi + 0x40]
sub ecx, edx
sar ecx, 3
test ebx, ebx
lea eax, [ecx - 1]
mov dword [esp + 0x40], eax
lea eax, [ebx + ecx]
cmovns eax, ebx
cmp eax, ecx
jae 0x100640eb
lea eax, [edx + eax*8]
test eax, eax
jne 0x100640f0
mov eax, 0x1036ebc4
mov esi, 0xfff9
cmp word [eax + 6], si
jne 0x10064113
mov eax, dword [eax]
test eax, eax
je 0x10064113
mov ecx, dword [eax]
test ecx, 0x200
je 0x100641ae
mov dword [esp + 0x34], eax
mov eax, dword [edi + 0x44]
mov edx, dword [edi + 0x40]
sub eax, edx
mov ebx, dword [esp + 0xc]
sar eax, 3
test ebx, ebx
lea ecx, [ebx + eax]
cmovns ecx, ebx
cmp ecx, eax
jae 0x10064135
lea ecx, [edx + ecx*8]
test ecx, ecx
jne 0x1006413a
mov ecx, 0x1036ebc4
cmp word [ecx + 6], si
jne 0x1006435d
mov ecx, dword [ecx]
test ecx, ecx
je 0x1006435d
mov ecx, dword [ecx]
shr ecx, 0x1b
cmp ecx, 0xa
jne 0x1006434f
test ebx, ebx
lea esi, [eax + ebx]
mov ecx, edi
cmovns esi, ebx
cmp esi, eax
jae 0x100645a9
shl esi, 3
add edx, esi
call fcn.10085060
mov eax, dword [edi + 0x40]
mov ecx, dword [eax + esi + 4]
mov edx, dword [eax + esi]
movsd qword [eax + esi], xmm0
mov eax, 0xfff8
shr ecx, 0x10
cmp cx, ax
jb 0x1006435d
add dword [edx + 4], 0xffffffff
jne 0x1006435d
mov ecx, edi
call fcn.1006e150
jmp 0x1006435d
test ecx, 0x2000000
je 0x100641cd
nop word [eax + eax]
mov eax, dword [eax + 0x28]
mov ecx, dword [eax]
test ecx, 0x2000000
jne 0x100641c0
and ecx, 0xf8000000
cmp ecx, 0x10000000
jne 0x10064113
push 0x30
mov edx, 0x1040c080
mov dword [esp + 0x14], 0
mov ecx, edi
call fcn.1006e9a0
mov ecx, dword [edi + 0x44]
xor edx, edx
or edx, 0xfff90000
add esp, 4
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, ebx
inc dword [eax + 4]
mov ecx, dword [edi + 0x44]
push 0x60
lea eax, [ecx + 8]
sub ecx, dword [edi + 0x40]
sar ecx, 3
mov dword [esp + 0x40], ecx
mov ecx, edi
mov dword [edi + 0x44], eax
call fcn.1004ed00
add esp, 4
nop dword [eax]
mov esi, dword [edi + 0x44]
mov eax, esi
mov ebx, dword [edi + 0x40]
sub eax, ebx
sar eax, 3
lea ecx, [eax - 1]
cmp ecx, eax
jae 0x1006424b
lea ecx, [ebx + ecx*8]
test ecx, ecx
jne 0x10064250
mov ecx, 0x1036ebc4
mov edx, 0xfff9
cmp word [ecx + 6], dx
jne 0x10064591
cmp dword [ecx], 0
je 0x10064591
cmp esi, dword [edi + 0x38]
jae 0x10064585
lea edx, [eax - 1]
cmp edx, eax
jae 0x10064577
lea eax, [esi + 8]
mov dword [edi + 0x44], eax
mov eax, dword [ebx + edx*8 + 4]
mov ecx, dword [ebx + edx*8]
mov ebx, 0xfff8
mov dword [esi + 4], eax
shr eax, 0x10
mov dword [esi], ecx
cmp ax, bx
jb 0x1006429e
inc dword [ecx + 4]
mov edx, 1
mov ecx, edi
call fcn.1006f320
test eax, eax
je 0x1006433e
mov eax, dword [edi + 0x44]
mov ecx, dword [edi + 0x40]
sub eax, ecx
sar eax, 3
lea edx, [eax - 1]
cmp edx, eax
jae 0x100642c9
lea eax, [ecx + edx*8]
jmp 0x100642cb
xor eax, eax
movzx ecx, word [eax + 6]
cmp cx, bx
jne 0x100642de
mov eax, dword [eax]
test dword [eax], 0x200
jmp 0x10064301
mov edx, 0xfff0
cmp cx, dx
jbe 0x1006430f
mov edx, 0xfff9
cmp cx, dx
jne 0x10064303
mov eax, dword [eax]
mov eax, dword [eax]
shr eax, 0x1b
cmp eax, 0xc
je 0x1006430f
cmp eax, 0xa
je 0x1006430f
mov ecx, edi
call fcn.10051c30
jmp 0x10064230
or edx, 0xffffffff
mov ecx, edi
call fcn.10050540
mov ebx, dword [esp + 0x10]
mov edx, 0xfffffffc
push ebx
mov ecx, edi
call fcn.1004e520
add esp, 4
inc ebx
mov ecx, edi
mov dword [esp + 0x10], ebx
call fcn.10051b90
jmp 0x10064230
mov ecx, edi
call fcn.10051b90
mov esi, 0xfff9
jmp 0x10064113
cmp ecx, 0xc
jne 0x1006435d
mov edx, ebx
mov ecx, edi
call fcn.10050540
mov eax, dword [edi + 0x44]
mov ebx, dword [edi + 0x40]
sub eax, ebx
mov ecx, dword [esp + 0xc]
sar eax, 3
test ecx, ecx
lea edx, [ecx + eax]
cmovns edx, ecx
lea ecx, [edx*8]
cmp edx, eax
jae 0x10064386
lea esi, [ebx + ecx]
test esi, esi
jne 0x1006438b
mov esi, 0x1036ebc4
mov ebx, 0xfff0
cmp word [esi + 6], bx
mov ebx, dword [edi + 0x40]
ja 0x100643cc
mov edx, dword [esp + 0xc]
lea eax, [esp + 0x10]
push eax
push 0xa
push 0
mov ecx, edi
call fcn.10050440
add esp, 0xc
mov edx, 0x103cf6b8
mov ecx, edi
push eax
call fcn.10050db0
mov eax, dword [edi + 0x44]
add esp, 4
mov eax, dword [eax - 8]
mov dword [esp + 0x38], eax
jmp 0x1006441e
cmp edx, eax
jae 0x100643d7
lea eax, [ebx + ecx]
test eax, eax
jne 0x100643dc
mov eax, 0x1036ebc4
mov ecx, 0xfff8
cmp word [eax + 6], cx
jne 0x1006441a
mov eax, dword [eax]
test eax, eax
je 0x1006441a
test dword [eax], 0x200
jne 0x1006441a
mov edx, dword [esp + 0xc]
mov ecx, edi
call fcn.1004f270
push 0xa
push 0
mov ecx, edi
call fcn.10052be0
mov eax, dword [edi + 0x44]
add esp, 8
mov eax, dword [eax - 8]
mov dword [esp + 0x38], eax
jmp 0x1006441e
mov eax, dword [esp + 0x38]
test eax, eax
je 0x10064430
cmp dword [eax + 0x14], 0
jne 0x10064430
mov dword [esp + 0x38], 0
mov eax, dword [edi + 0x44]
mov ecx, edi
cmp eax, dword [edi + 0x38]
jae 0x100645b4
push 0x28
mov edx, 0x8004080
call fcn.1006e9a0
mov ecx, dword [edi + 0x44]
xor edx, edx
or edx, 0xfff90000
add esp, 4
mov dword [ecx], eax
mov dword [ecx + 4], edx
inc dword [eax + 4]
add dword [edi + 0x44], 8
mov ecx, dword [edi + 0x68]
mov dword [eax + 0x14], ecx
test ecx, ecx
je 0x10064471
inc dword [ecx + 4]
mov esi, dword [edi + 0x44]
mov ecx, edi
sub esi, dword [edi + 0x40]
mov edx, dword [esp + 0x18]
sar esi, 3
call fcn.1004f270
push 0xf
mov edx, 0xfffffffe
mov ecx, edi
call fcn.1004e620
mov eax, dword [edi + 0x128]
xor edx, edx
mov ecx, dword [edi + 0x44]
add esp, 4
or edx, 0xfff80000
mov ebx, dword [eax + 0x3c]
cmp ecx, dword [edi + 0x38]
jae 0x100645be
lea eax, [ecx + 8]
mov dword [edi + 0x44], eax
mov dword [ecx + 4], edx
lea edx, [esi - 1]
mov dword [ecx], ebx
lea ecx, [esp + 0x20]
inc dword [ebx + 4]
mov dword [esp + 0x60], 0x3e8
call fcn.100632f0
mov esi, dword [edi + 0x44]
mov ebx, dword [edi + 0x38]
test eax, eax
jne 0x100644ef
cmp esi, ebx
jae 0x100645ca
lea eax, [esi + 8]
mov dword [edi + 0x44], eax
jmp 0x10064541
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
sub ecx, edx
cmp esi, ebx
jae 0x100645d6
xor eax, eax
test edx, edx
cmovne eax, ecx
cmp eax, 0x7fffffff
ja 0x100645e2
mov ecx, dword [edi + 0x2c]
push eax
call fcn.1006e810
mov edx, eax
add esp, 4
test edx, edx
je 0x100645f8
mov ecx, dword [edi + 0x44]
lea eax, [ecx + 8]
mov dword [edi + 0x44], eax
xor eax, eax
or eax, 0xfff80000
mov dword [ecx], edx
mov dword [ecx + 4], eax
inc dword [edx + 4]
mov esi, dword [esp + 0x14]
mov ecx, edi
mov edx, esi
call fcn.1004f3a0
lea edx, [esi + 1]
mov ecx, edi
call fcn.1004ef90
mov ecx, dword [esp + 0x184]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.102e0890
mov esp, ebp
pop ebp
ret
push 0x12dc
call fcn.1004c4c0
push 0xffffffffffffffff
push 0x178
mov ecx, edi
call fcn.1004c4a0
push 0x448
mov ecx, edi
call fcn.1004c4c0
push str.object
push 0xffffffffffffffff
push 0x87d
mov edx, str.C:UsersowenDesktopjre.codesduk_api_stack.c
mov ecx, edi
call fcn.1004c3e0
push ebx
push 0x12c
call fcn.1004c4a0
push 0x12dc
call fcn.1004c4c0
push 0x10ca
mov ecx, edi
call fcn.1004c4c0
push 0x10d3
mov ecx, edi
call fcn.1004c4c0
push 0x115d
mov ecx, edi
call fcn.1004c4c0
push str.string_too_long
push 0x116a
mov edx, str.C:UsersowenDesktopjre.codesduk_api_stack.c
mov ecx, edi
call fcn.1004c480
push 0x325
mov edx, str.C:UsersowenDesktopjre.codesduk_heap_stringtable.c
mov ecx, edi
call fcn.1004c440
int3