Function at 0x10063b90
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xec
mov edi, ecx
mov esi, dword [esp + 0x100]
mov eax, dword [0x10259d1c]
xor eax, esp
mov dword [esp + 0xe8], eax
mov eax, dword [esi + 8]
bswap eax
mov dword [esp + 0x20], eax
push eax
call fcn.100484d0
add esp, 4
mov dword [esp + 0x10], eax
mov eax, dword [esi]
bswap eax
cmp eax, 0x57bc0000
jne 0x1006450f
mov ecx, esi
mov eax, dword [esi + 4]
bswap eax
test eax, eax
jne 0x1006450f
mov dword [esp + 0x18], edi
mov eax, dword [ecx + 8]
bswap eax
mov dword [0x1025f540], ecx
mov edi, dword [esp + 0x10]
lea ebp, [edi + eax]
mov dword [0x1025f544], ebp
mov dword [0x1025f548], edi
lea esi, [ecx + 0x10]
mov dword [0x1025f54c], edi
add eax, edi
inc eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x14], ebp
jmp 0x10063c3a
mov dword [0x1025f54c], eax
mov esi, dword [esp + 4]
add esi, 4
mov edi, eax
mov ebp, dword [esp + 0x14]
cmp edi, ebp
ja 0x100646f6
movzx ecx, byte [esi]
mov edx, ecx
cmp ecx, 0x20
jb 0x10063d40
test dl, dl
js 0x10063f34
cmp dl, 0x40
mov dword [esp + 4], esi
jb 0x10063f6a
movzx ebx, byte [esi + 2]
lea eax, [edi + ebx]
inc eax
cmp eax, ebp
ja 0x100646f6
shl ecx, 8
movzx esi, byte [esi + 1]
mov ebp, 0x3fff
sub ebp, ecx
sub ebp, esi
lea edx, [edi + ebp]
mov eax, dword [esp + 0xc]
cmp edx, dword [esp + 0x10]
jb 0x1006433a
mov eax, ebx
inc ebx
cmp al, 0xf
jb 0x10063ca6
or ecx, esi
add ecx, 0xffffc001
cmp ecx, 0x10
jae 0x10064300
mov ebp, ebx
mov eax, edi
lea edi, [ebp - 1]
mov ebx, ebp
and ebx, 7
je 0x10063cd2
xor esi, esi
nop word cs:[eax + eax]
movzx ecx, byte [edx + esi]
mov byte [eax + esi], cl
inc esi
cmp ebx, esi
jne 0x10063cc0
add edx, esi
sub ebp, esi
add eax, esi
cmp edi, 7
jb 0x1006433a
xor esi, esi
nop dword [eax]
movzx ecx, byte [edx + esi]
mov byte [eax + esi], cl
movzx ecx, byte [edx + esi + 1]
mov byte [eax + esi + 1], cl
movzx ecx, byte [edx + esi + 2]
mov byte [eax + esi + 2], cl
movzx ecx, byte [edx + esi + 3]
mov byte [eax + esi + 3], cl
movzx ecx, byte [edx + esi + 4]
mov byte [eax + esi + 4], cl
movzx ecx, byte [edx + esi + 5]
mov byte [eax + esi + 5], cl
movzx ecx, byte [edx + esi + 6]
mov byte [eax + esi + 6], cl
movzx ecx, byte [edx + esi + 7]
mov byte [eax + esi + 7], cl
add esi, 8
cmp ebp, esi
jne 0x10063ce0
add eax, esi
jmp 0x1006433a
cmp dl, 0x18
mov dword [esp + 4], esi
jb 0x10063e40
movzx ebx, byte [esi + 3]
lea eax, [edi + ebx]
inc eax
cmp eax, ebp
ja 0x100646f6
shl ecx, 0x10
mov eax, esi
movzx esi, byte [esi + 1]
shl esi, 8
movzx eax, byte [eax + 2]
mov dword [esp], eax
lea ebp, [ecx + eax]
or ebp, esi
mov edx, edi
sub edx, ebp
add edx, 0x17ffff
mov eax, dword [esp + 0xc]
cmp edx, dword [esp + 0x10]
jb 0x10063c20
mov eax, ebx
inc ebx
cmp al, 0xf
jb 0x10063da3
add ebp, 0xffe80001
cmp ebp, 0x10
jae 0x100640de
mov ebp, ebx
mov eax, edi
lea ecx, [ebp - 1]
mov edi, ebp
and edi, 7
je 0x10063dd2
xor esi, esi
nop word cs:[eax + eax]
movzx ebx, byte [edx + esi]
mov byte [eax + esi], bl
inc esi
cmp edi, esi
jne 0x10063dc0
add edx, esi
sub ebp, esi
add eax, esi
cmp ecx, 7
jb 0x10063c20
xor ecx, ecx
nop dword [eax]
movzx ebx, byte [edx + ecx]
mov byte [eax + ecx], bl
movzx ebx, byte [edx + ecx + 1]
mov byte [eax + ecx + 1], bl
movzx ebx, byte [edx + ecx + 2]
mov byte [eax + ecx + 2], bl
movzx ebx, byte [edx + ecx + 3]
mov byte [eax + ecx + 3], bl
movzx ebx, byte [edx + ecx + 4]
mov byte [eax + ecx + 4], bl
movzx ebx, byte [edx + ecx + 5]
mov byte [eax + ecx + 5], bl
movzx ebx, byte [edx + ecx + 6]
mov byte [eax + ecx + 6], bl
movzx ebx, byte [edx + ecx + 7]
mov byte [eax + ecx + 7], bl
add ecx, 8
cmp ebp, ecx
jne 0x10063de0
add eax, ecx
jmp 0x10063c20
cmp dl, 0x10
jb 0x10063fb1
movzx eax, word [esi + 3]
rol ax, 8
mov edx, ebp
movzx ebp, ax
lea eax, [edi + ebp]
inc eax
cmp eax, edx
ja 0x100646f6
shl ecx, 0x10
movzx ebx, byte [esi + 1]
shl ebx, 8
movzx eax, byte [esi + 2]
mov dword [esp], eax
lea esi, [ecx + eax]
or esi, ebx
mov edx, edi
sub edx, esi
add edx, 0xfffff
mov eax, dword [esp + 0xc]
cmp edx, dword [esp + 0x10]
jb 0x100644df
lea eax, [ebp + 1]
cmp ebp, 0xf
jb 0x10063ea7
add esi, 0xfff00001
cmp esi, 0x10
jae 0x1006434b
mov ebp, eax
mov eax, edi
lea ecx, [ebp - 1]
mov edi, ebp
and edi, 7
je 0x10063ed2
xor esi, esi
nop word [eax + eax]
movzx ebx, byte [edx + esi]
mov byte [eax + esi], bl
inc esi
cmp edi, esi
jne 0x10063ec0
add edx, esi
sub ebp, esi
add eax, esi
cmp ecx, 7
jb 0x100644df
xor ecx, ecx
nop dword [eax]
movzx ebx, byte [edx + ecx]
mov byte [eax + ecx], bl
movzx ebx, byte [edx + ecx + 1]
mov byte [eax + ecx + 1], bl
movzx ebx, byte [edx + ecx + 2]
mov byte [eax + ecx + 2], bl
movzx ebx, byte [edx + ecx + 3]
mov byte [eax + ecx + 3], bl
movzx ebx, byte [edx + ecx + 4]
mov byte [eax + ecx + 4], bl
movzx ebx, byte [edx + ecx + 5]
mov byte [eax + ecx + 5], bl
movzx ebx, byte [edx + ecx + 6]
mov byte [eax + ecx + 6], bl
movzx ebx, byte [edx + ecx + 7]
mov byte [eax + ecx + 7], bl
add ecx, 8
cmp ebp, ecx
jne 0x10063ee0
add eax, ecx
jmp 0x100644df
lea eax, [edi + ecx]
add eax, 0xffffff81
cmp eax, ebp
ja 0x100646f6
movzx ebx, byte [esi + 1]
mov ebp, ebx
not ebx
lea edx, [ebx + edi]
mov eax, dword [esp + 0xc]
cmp edx, dword [esp + 0x10]
jae 0x1006403c
mov dword [0x1025f54c], eax
mov edi, eax
add esi, 2
jmp 0x10063c2e
lea esi, [edi + ecx]
add esi, 0xffffffe1
cmp esi, ebp
ja 0x100646f6
mov eax, dword [esp + 4]
inc eax
mov ebx, dword [esp + 0xc]
cmp eax, dword [esp + 0x100]
jb 0x10063fa4
add ecx, 0xffffffe1
push ecx
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 4]
movzx edx, byte [eax]
movzx ecx, dl
mov ebx, esi
mov dword [0x1025f54c], ebx
add ecx, 0xffffffe2
mov edi, ebx
jmp 0x10064029
cmp dl, 8
jb 0x10064091
shl ecx, 8
movzx eax, byte [esi + 1]
mov dword [esp + 8], eax
add eax, ecx
lea ebx, [edi + eax]
add ebx, 0xfffff801
mov dword [esp], ebx
cmp ebx, ebp
ja 0x100646f6
add esi, 2
mov ebp, dword [esp + 0xc]
cmp esi, dword [esp + 0x100]
jb 0x10064016
mov eax, dword [esp + 8]
add eax, ecx
add eax, 0xfffff801
push eax
push esi
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 4]
movzx edx, byte [eax]
movzx ecx, byte [eax + 1]
mov eax, edx
shl eax, 8
or eax, ecx
mov ebp, dword [esp]
mov dword [0x1025f54c], ebp
add eax, 0xfffff803
mov ecx, eax
mov edi, ebp
mov ebp, dword [esp + 0x14]
test ecx, ecx
mov esi, dword [esp + 4]
je 0x100644f0
add esi, ecx
jmp 0x10063c32
add ecx, 0xffffff81
je 0x10063f62
cmp ecx, 0x10
mov dword [esp + 4], esi
jb 0x10064131
mov eax, ebp
cmp al, 0xf
jb 0x10064131
mov esi, ecx
and esi, 0xfffffff0
add edx, esi
mov ebp, ecx
and ebp, 0xf
lea eax, [edi + esi]
mov dword [esp], esi
nop
movups xmm0, xmmword [edi + ebx]
movups xmmword [edi], xmm0
add edi, 0x10
add esi, 0xfffffff0
jne 0x10064070
cmp ecx, dword [esp]
mov esi, dword [esp + 4]
je 0x10063f5b
jmp 0x10064135
cmp ecx, 4
je 0x100641d4
cmp ecx, 6
je 0x10064270
cmp ecx, 7
jne 0x100644f0
movzx eax, word [esi + 1]
rol ax, 8
movzx eax, ax
mov ebx, esi
lea esi, [edi + eax]
inc esi
cmp esi, ebp
ja 0x100646f6
lea ecx, [ebx + 3]
cmp ecx, dword [esp + 0x100]
jae 0x1006439e
mov esi, dword [esp + 0xc]
jmp 0x100643b5
mov eax, ebx
and eax, 0xfffffff0
add edx, eax
mov dword [esp + 8], ebx
mov ebp, ebx
and ebp, 0xf
mov ebx, dword [esp]
add ebx, esi
mov esi, eax
add eax, edi
add ebx, ecx
mov ecx, 0x17ffff
sub ecx, ebx
mov dword [esp], esi
nop word cs:[eax + eax]
movups xmm0, xmmword [edi + ecx]
movups xmmword [edi], xmm0
add edi, 0x10
add esi, 0xfffffff0
jne 0x10064110
mov ecx, dword [esp + 8]
cmp ecx, dword [esp]
je 0x10063c20
jmp 0x10063da7
mov ebp, ecx
mov eax, edi
lea ecx, [ebp - 1]
mov edi, ebp
and edi, 7
je 0x10064166
xor esi, esi
nop word cs:[eax + eax]
movzx ebx, byte [edx + esi]
mov byte [eax + esi], bl
inc esi
cmp edi, esi
jne 0x10064150
add edx, esi
sub ebp, esi
add eax, esi
mov esi, dword [esp + 4]
cmp ecx, 7
jb 0x10063f5b
xor ecx, ecx
nop word cs:[eax + eax]
movzx ebx, byte [edx + ecx]
mov byte [eax + ecx], bl
movzx ebx, byte [edx + ecx + 1]
mov byte [eax + ecx + 1], bl
movzx ebx, byte [edx + ecx + 2]
mov byte [eax + ecx + 2], bl
movzx ebx, byte [edx + ecx + 3]
mov byte [eax + ecx + 3], bl
movzx ebx, byte [edx + ecx + 4]
mov byte [eax + ecx + 4], bl
movzx ebx, byte [edx + ecx + 5]
mov byte [eax + ecx + 5], bl
movzx ebx, byte [edx + ecx + 6]
mov byte [eax + ecx + 6], bl
movzx ebx, byte [edx + ecx + 7]
mov byte [eax + ecx + 7], bl
add ecx, 8
cmp ebp, ecx
jne 0x10064180
add eax, ecx
jmp 0x10063f5b
movzx eax, word [esi + 4]
rol ax, 8
movzx edx, ax
lea eax, [edi + edx]
inc eax
cmp eax, ebp
ja 0x100646f6
movzx ecx, byte [esi + 1]
shl ecx, 0x10
movzx ebx, byte [esi + 3]
mov eax, esi
mov dword [esp], ecx
lea esi, [ecx + ebx]
movzx ebp, byte [eax + 2]
shl ebp, 8
or esi, ebp
mov ecx, esi
not ecx
add ecx, edi
mov eax, dword [esp + 0xc]
cmp ecx, dword [esp + 0x10]
jb 0x1006444f
lea eax, [edx + 1]
cmp edx, 0xf
jb 0x100643c9
cmp esi, 0xf
jb 0x100643c9
mov esi, eax
and esi, 0xfffffff0
add ecx, esi
mov dword [esp + 8], eax
mov edx, eax
and edx, 0xf
add ebx, ebp
mov ebp, esi
lea eax, [edi + esi]
add ebx, dword [esp]
not ebx
nop dword [eax]
movups xmm0, xmmword [edi + ebx]
movups xmmword [edi], xmm0
add edi, 0x10
add esi, 0xfffffff0
jne 0x10064250
cmp dword [esp + 8], ebp
mov ebp, edx
jne 0x100643cd
jmp 0x1006444f
movzx ebx, byte [esi + 4]
lea eax, [edi + ebx]
inc eax
cmp eax, ebp
ja 0x100646f6
movzx eax, byte [esi + 1]
shl eax, 0x10
movzx ebp, byte [esi + 3]
mov dword [esp], eax
lea edx, [eax + ebp]
movzx esi, byte [esi + 2]
shl esi, 8
or edx, esi
mov ecx, edx
not ecx
add ecx, edi
mov eax, dword [esp + 0xc]
cmp ecx, dword [esp + 0x10]
jb 0x100644df
mov eax, ebx
inc ebx
cmp al, 0xf
jb 0x10064460
cmp edx, 0xf
jb 0x10064460
mov edx, ebx
and edx, 0xfffffff0
add ecx, edx
mov eax, ebx
and eax, 0xf
mov dword [esp + 8], eax
add ebp, esi
mov esi, edx
lea eax, [edi + edx]
add ebp, dword [esp]
not ebp
nop
movups xmm0, xmmword [edi + ebp]
movups xmmword [edi], xmm0
add edi, 0x10
add edx, 0xfffffff0
jne 0x100642e0
cmp ebx, esi
mov ebp, dword [esp + 8]
jne 0x10064464
jmp 0x100644df
mov esi, ebx
and esi, 0xfffffff0
add edx, esi
mov eax, ebx
and eax, 0xf
mov dword [esp], eax
lea eax, [edi + esi]
mov ecx, esi
nop word cs:[eax + eax]
movups xmm0, xmmword [edi + ebp]
movups xmmword [edi], xmm0
add edi, 0x10
add esi, 0xfffffff0
jne 0x10064320
cmp ebx, ecx
mov ebp, dword [esp]
jne 0x10063caa
mov dword [0x1025f54c], eax
mov esi, dword [esp + 4]
add esi, 3
jmp 0x10063c2c
mov esi, eax
and esi, 0xfffffff0
mov dword [esp + 0x1c], esi
add edx, esi
mov dword [esp + 8], eax
mov ebp, eax
and ebp, 0xf
mov esi, dword [esp]
add esi, ebx
mov ebx, dword [esp + 0x1c]
lea eax, [edi + ebx]
add esi, ecx
mov ecx, 0xfffff
sub ecx, esi
mov esi, ebx
nop word cs:[eax + eax]
movups xmm0, xmmword [edi + ecx]
movups xmmword [edi], xmm0
add edi, 0x10
add esi, 0xfffffff0
jne 0x10064380
cmp dword [esp + 8], ebx
jne 0x10063eab
jmp 0x100644df
inc eax
push eax
push ecx
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
movzx eax, word [ebx + 1]
rol ax, 8
movzx eax, ax
mov dword [0x1025f54c], esi
add ebx, eax
add ebx, 4
mov edi, esi
mov esi, ebx
jmp 0x10063c32
mov ebp, eax
mov eax, edi
lea edi, [ebp - 1]
mov ebx, ebp
and ebx, 7
je 0x100643f2
xor esi, esi
nop dword [eax]
movzx edx, byte [ecx + esi]
mov byte [eax + esi], dl
inc esi
cmp ebx, esi
jne 0x100643e0
add ecx, esi
sub ebp, esi
add eax, esi
cmp edi, 7
jb 0x1006444f
xor esi, esi
nop dword [eax]
movzx edx, byte [ecx + esi]
mov byte [eax + esi], dl
movzx edx, byte [ecx + esi + 1]
mov byte [eax + esi + 1], dl
movzx edx, byte [ecx + esi + 2]
mov byte [eax + esi + 2], dl
movzx edx, byte [ecx + esi + 3]
mov byte [eax + esi + 3], dl
movzx edx, byte [ecx + esi + 4]
mov byte [eax + esi + 4], dl
movzx edx, byte [ecx + esi + 5]
mov byte [eax + esi + 5], dl
movzx edx, byte [ecx + esi + 6]
mov byte [eax + esi + 6], dl
movzx edx, byte [ecx + esi + 7]
mov byte [eax + esi + 7], dl
add esi, 8
cmp ebp, esi
jne 0x10064400
add eax, esi
mov dword [0x1025f54c], eax
mov esi, dword [esp + 4]
add esi, 6
jmp 0x10063c2c
mov ebp, ebx
mov eax, edi
lea edx, [ebp - 1]
mov edi, ebp
and edi, 7
je 0x10064482
xor esi, esi
movzx ebx, byte [ecx + esi]
mov byte [eax + esi], bl
inc esi
cmp edi, esi
jne 0x10064470
add ecx, esi
sub ebp, esi
add eax, esi
cmp edx, 7
jb 0x100644df
xor edx, edx
nop dword [eax]
movzx ebx, byte [ecx + edx]
mov byte [eax + edx], bl
movzx ebx, byte [ecx + edx + 1]
mov byte [eax + edx + 1], bl
movzx ebx, byte [ecx + edx + 2]
mov byte [eax + edx + 2], bl
movzx ebx, byte [ecx + edx + 3]
mov byte [eax + edx + 3], bl
movzx ebx, byte [ecx + edx + 4]
mov byte [eax + edx + 4], bl
movzx ebx, byte [ecx + edx + 5]
mov byte [eax + edx + 5], bl
movzx ebx, byte [ecx + edx + 6]
mov byte [eax + edx + 6], bl
movzx ebx, byte [ecx + edx + 7]
mov byte [eax + edx + 7], bl
add edx, 8
cmp ebp, edx
jne 0x10064490
add eax, edx
mov dword [0x1025f54c], eax
mov esi, dword [esp + 4]
add esi, 5
jmp 0x10063c2c
cmp dl, 5
jne 0x100646f6
cmp byte [esi + 1], 0xfa
jne 0x100646f6
cmp edi, ebp
mov edi, dword [esp + 0x18]
jne 0x100646f6
mov esi, dword [esp + 0x10c]
test esi, esi
je 0x100646a7
movzx eax, byte [esi + 0xb]
cmp dword [esi], 0
mov byte [esp + 0x2a], al
movzx eax, word [esi + 9]
mov word [esp + 0x28], ax
mov ebp, dword [esi + 0xc]
movsd xmm0, qword [esi + 0x14]
movzx ecx, byte [esi + 0x1c]
movups xmm1, xmmword [esi + 0x28]
movups xmmword [esp + 0x63], xmm1
movups xmm1, xmmword [esi + 0x1d]
movups xmmword [esp + 0x58], xmm1
movss xmm2, dword [esi + 0x38]
movzx edx, byte [esi + 0x3c]
movzx ebx, byte [esi + 0x3f]
mov byte [esp + 0x26], bl
mov eax, edi
movzx edi, word [esi + 0x3d]
mov word [esp + 0x24], di
mov edi, eax
mov ebx, dword [esi + 0x40]
movss xmm1, dword [esi + 0x44]
movups xmm3, xmmword [esi + 0x64]
movups xmmword [esp + 0x48], xmm3
movups xmm3, xmmword [esi + 0x58]
movups xmmword [esp + 0x3c], xmm3
movups xmm3, xmmword [esi + 0x48]
movups xmmword [esp + 0x2c], xmm3
jne 0x100646f6
cmp byte [edi], 0
jne 0x100646f6
mov byte [esp + 0x7c], 1
movzx esi, word [esp + 0x28]
mov word [esp + 0x7d], si
movzx eax, byte [esp + 0x2a]
mov byte [esp + 0x7f], al
mov dword [esp + 0x80], ebp
movlps qword [esp + 0x88], xmm0
mov byte [esp + 0x90], cl
movups xmm0, xmmword [esp + 0x58]
movups xmm3, xmmword [esp + 0x63]
movups xmmword [esp + 0x91], xmm0
movups xmmword [esp + 0x9c], xmm3
movss dword [esp + 0xac], xmm2
mov byte [esp + 0xb0], dl
movzx eax, word [esp + 0x24]
mov word [esp + 0xb1], ax
movzx eax, byte [esp + 0x26]
mov byte [esp + 0xb3], al
mov dword [esp + 0xb4], ebx
movss dword [esp + 0xb8], xmm1
movups xmm0, xmmword [esp + 0x2c]
movups xmm1, xmmword [esp + 0x3c]
movups xmmword [esp + 0xbc], xmm0
movups xmmword [esp + 0xcc], xmm1
movups xmm0, xmmword [esp + 0x48]
movups xmmword [esp + 0xd8], xmm0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x110]
movss xmm0, dword [esp + 0x108]
movss dword [esp + 0x84], xmm0
test eax, eax
je 0x1006467c
mov dword [esp + 0xa4], eax
lea eax, [esp + 0x74]
mov ecx, edi
push eax
call fcn.10063650
mov esi, eax
mov ecx, dword [esp + 0xe8]
xor ecx, esp
call fcn.10155bf1
mov eax, esi
add esp, 0xec
pop esi
pop edi
pop ebx
pop ebp
ret 0x14
xorps xmm0, xmm0
movups xmmword [esp + 0x5b], xmm0
mov dword [esp + 0x6f], 0
mov dword [esp + 0x6b], 0
movups xmmword [esp + 0x2c], xmm0
movups xmmword [esp + 0x3c], xmm0
movups xmmword [esp + 0x48], xmm0
movaps xmm0, xmmword [0x101af220]
movss xmm1, dword [0x101a7280]
movss xmm2, dword [0x101a89dc]
xor ebp, ebp
xor ecx, ecx
xor edx, edx
xor ebx, ebx
cmp byte [edi], 0
je 0x100645a0
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3