Function at 0x4710a0
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x110
mov esi, esp
mov edx, dword [ebp + 0x1c]
mov edi, dword [ebp + 0x10]
mov eax, dword [edi + 8]
mov dword [esi + 0x40], eax
mov ecx, dword [edi + 4]
add ecx, dword [edi]
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x44], ecx
mov dword [esi + 0x48], 0xffffffff
mov ecx, dword [eax + 8]
mov dword [esi + 0x4c], ecx
mov ecx, dword [eax + 4]
add ecx, dword [eax]
mov dword [esi + 0x50], ecx
mov ecx, dword [ebp + 0x14]
sub ecx, dword [eax + 0xc]
mov dword [esi + 0x54], ecx
lea eax, [edx + 0x18]
mov dword [esi + 0x1c], eax
xor eax, eax
mov dword [esi + 0x2c], 0
jmp 0x47110f
mov eax, dword [esi + 0x3c]
add eax, 0xc
cmp eax, 0x18
je 0x472628
mov edi, dword [esi + eax + 0x40]
mov ecx, dword [esi + eax + 0x44]
mov dword [esi + 0x28], ecx
mov dword [esi + 8], edi
mov dword [esi + 0x3c], eax
mov eax, dword [esi + eax + 0x48]
mov dword [esi + 0x34], eax
cmp byte [0x4a49e1], 1
jne 0x471140
test byte [0x4a49e0], 1
mov ebx, dword [esi + 0x28]
jne 0x471162
jmp 0x471181
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
mov ebx, dword [esi + 0x28]
je 0x471181
push 2
call dword [0x4a3560]
add esp, 4
push 0
push ebx
push str.parseFDEInstructions_instructions0x_0llx__n
push eax
call fcn.00474010
add esp, 0x10
mov edi, dword [esi + 8]
cmp edi, ebx
setae al
cmp dword [esi + 0x34], 0
sete cl
or cl, al
jne 0x471100
mov edx, ebx
mov dword [esi + 0x24], 0
nop
movzx ebx, byte [edi]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp ebx, 0x2f
ja case.0x4711b2.23
jmp dword [ebx*4 + 0x4728ac]
cmp byte [0x4a49e1], 1
jne 0x471ef7
test byte [0x4a49e0], 1
jne 0x471f1a
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov dword [esi + 0x30], eax
mov dword [esi + 0x20], edx
mov edx, dword [esi + 8]
mov dword [esi + 0x10], 0
mov ecx, 0xfffffff9
mov dword [esi + 0x18], 0
mov dword [esi + 0x14], edx
nop word cs:[eax + eax]
cmp edx, dword [esi + 0x28]
je 0x472831
add ecx, 7
movzx eax, byte [edx]
mov byte [esi + 0xc], al
and al, 0x7f
movzx edi, al
xor eax, eax
shld eax, edi, cl
inc edx
shl edi, cl
test cl, 0x20
cmovne eax, edi
mov ebx, 0
cmovne edi, ebx
or dword [esi + 0x18], eax
movzx eax, byte [esi + 0xc]
or dword [esi + 0x10], edi
inc dword [esi + 0x14]
test al, al
js 0x471210
cmp al, 0x40
setae dl
cmp ecx, 0x39
setb al
add cl, 7
mov edi, 0xffffffff
shl edi, cl
test cl, 0x20
mov ecx, 0xffffffff
cmovne ecx, edi
cmovne edi, ebx
test dl, al
cmove edi, ebx
cmove ecx, ebx
mov dword [esi + 0xc], ecx
mov ecx, dword [esi + 0x10]
or ecx, edi
mov eax, dword [esi + 0x14]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x18]
mov eax, ecx
mov dword [esi + 0x14], edx
mul edx
mov ebx, eax
mov edi, dword [esi + 0x30]
cmp edi, 9
mov eax, dword [esi + 0x20]
sbb eax, 0
jae 0x472758
mov eax, dword [ebp + 0x1c]
mov dword [eax], edi
mov dword [esi + 0x38], ebx
mov dword [eax + 4], ebx
cmp byte [0x4a49e1], 1
jne 0x472341
test byte [0x4a49e0], 1
jne 0x47236e
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
cmp eax, 9
mov ecx, edx
sbb ecx, 0
jae 0x472674
mov dword [esi + 0x30], edx
mov dword [esi + 0x20], eax
mov edx, dword [esi + 8]
mov dword [esi + 0x10], 0
mov ecx, 0xfffffff9
mov dword [esi + 0x14], 0
mov dword [esi + 0x18], edx
nop dword [eax]
cmp edx, dword [esi + 0x28]
je 0x472831
add ecx, 7
movzx eax, byte [edx]
mov byte [esi + 0xc], al
and al, 0x7f
movzx edi, al
xor eax, eax
shld eax, edi, cl
inc edx
shl edi, cl
test cl, 0x20
cmovne eax, edi
mov ebx, 0
cmovne edi, ebx
or dword [esi + 0x14], eax
movzx eax, byte [esi + 0xc]
or dword [esi + 0x10], edi
inc dword [esi + 0x18]
test al, al
js 0x471310
cmp al, 0x40
setae dl
cmp ecx, 0x39
setb al
add cl, 7
mov edi, 0xffffffff
shl edi, cl
test cl, 0x20
mov ecx, 0xffffffff
cmovne ecx, edi
cmovne edi, ebx
test dl, al
cmove edi, ebx
cmove ecx, ebx
mov edx, dword [esi + 0x10]
or edx, edi
mov eax, dword [esi + 0x18]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x18]
mov dword [esi + 0x10], edx
mov eax, edx
mul ebx
mov dword [esi + 0x18], eax
mov dword [esi + 0xc], edx
mov edi, dword [esi + 0x20]
mov eax, edi
shl eax, 4
mov edx, dword [esi + 0x1c]
cmp byte [edx + eax + 4], 0
lea eax, [edx + eax]
jne 0x4713bf
mov edx, edi
shl edx, 4
movups xmm0, xmmword [eax]
lea edi, [esi + 0x70]
movups xmmword [edi + edx], xmm0
mov byte [eax + 4], 1
mov edx, dword [esi + 0x14]
or edx, ecx
imul edx, ebx
sar ebx, 0x1f
mov ecx, dword [esi + 0x10]
imul ecx, ebx
mov edi, dword [esi + 0xc]
add edi, ecx
add edi, edx
mov dword [eax], 4
mov ebx, dword [esi + 0x18]
mov dword [eax + 8], ebx
mov dword [esi + 0xc], edi
mov dword [eax + 0xc], edi
cmp byte [0x4a49e1], 1
jne 0x4723a3
test byte [0x4a49e0], 1
mov edi, dword [esi + 0x20]
jne 0x4723c9
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov edi, eax
cmp eax, 9
mov eax, edx
sbb eax, 0
jae 0x47265d
mov ebx, edx
mov eax, dword [ebp + 0x1c]
mov dword [eax], edi
cmp byte [0x4a49e1], 1
jne 0x472069
test byte [0x4a49e0], 1
jne 0x47208c
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov edi, eax
mov ebx, edx
mov eax, dword [ebp + 0x1c]
mov dword [eax + 0x10], edi
cmp byte [0x4a49e1], 1
jne 0x471e03
test byte [0x4a49e0], 1
jne 0x471e26
jmp 0x472609
push eax
sub esp, 0xac
mov edi, esp
and edi, 0xfffffff0
mov esp, edi
mov eax, dword [esi + 0x2c]
mov dword [edi], eax
lea eax, [edi + 8]
push 0xa8
push dword [ebp + 0x1c]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
cmp byte [0x4a49e1], 1
jne 0x471e3d
test byte [0x4a49e0], 1
jne 0x471e5c
jmp 0x471e75
movzx eax, byte [edi + 1]
mov ecx, dword [ebp + 0x10]
imul eax, dword [ecx + 0x14]
add dword [esi + 0x24], eax
add edi, 2
mov dword [esi + 8], edi
cmp byte [0x4a49e1], 1
jne 0x471e7d
test byte [0x4a49e0], 1
jne 0x471ea0
jmp 0x472609
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x14]
imul eax, dword [edi + 1]
add dword [esi + 0x24], eax
add edi, 5
mov dword [esi + 8], edi
cmp byte [0x4a49e1], 1
jne 0x471eba
test byte [0x4a49e0], 1
jne 0x471edd
jmp 0x472609
push edx
lea edi, [esi + 8]
push edi
call fcn.00472e00
add esp, 8
cmp eax, 9
mov ecx, edx
sbb ecx, 0
jae 0x47262f
mov dword [esi + 0x10], edx
mov ecx, eax
shl ecx, 4
mov edx, dword [esi + 0x1c]
lea ebx, [edx + ecx]
cmp byte [edx + ecx + 4], 0
jne 0x471572
mov ecx, eax
shl ecx, 4
movups xmm0, xmmword [ebx]
lea edx, [esi + 0x70]
movups xmmword [edx + ecx], xmm0
mov byte [ebx + 4], 1
mov dword [esi + 0xc], eax
mov ecx, dword [esi + 8]
mov dword [ebx], 7
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], 0
push dword [esi + 0x28]
push edi
call fcn.00472e00
add esp, 8
mov ebx, eax
cmp eax, 0xffffffff
mov eax, edx
sbb eax, 0
jae 0x472880
mov edi, edx
add dword [esi + 8], ebx
cmp byte [0x4a49e1], 1
jne 0x472291
test byte [0x4a49e0], 1
jne 0x4722b4
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov edi, eax
mov ebx, edx
push dword [esi + 0x28]
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
cmp edi, 9
mov dword [esi + 0xc], ebx
sbb ebx, 0
jae 0x47268b
mov ecx, eax
mov dword [esi + 0x10], edx
mov eax, dword [ebp + 0x1c]
mov dword [eax], edi
mov ebx, ecx
mov dword [eax + 4], ecx
cmp byte [0x4a49e1], 1
jne 0x4720a3
test byte [0x4a49e0], 1
jne 0x4720c6
jmp 0x472609
mov dword [esi + 0x18], 0
mov ecx, 0xfffffff9
xor edi, edi
mov ebx, eax
nop word cs:[eax + eax]
mov dword [esi + 0x10], edi
mov dword [esi + 0xc], eax
cmp ebx, dword [esi + 0x28]
je 0x472831
add ecx, 7
movzx eax, byte [ebx]
mov byte [esi + 0x14], al
and al, 0x7f
movzx eax, al
xor edx, edx
shld edx, eax, cl
inc ebx
xor edi, edi
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, edi
mov edi, dword [esi + 0x10]
or edi, edx
movzx edx, byte [esi + 0x14]
or dword [esi + 0x18], eax
mov eax, dword [esi + 0xc]
inc eax
test dl, dl
js 0x471640
cmp dl, 0x40
setae dl
cmp ecx, 0x39
setb dh
add cl, 7
mov edi, eax
mov eax, 0xffffffff
shl eax, cl
test cl, 0x20
mov ecx, 0
cmovne eax, ecx
test dl, dh
cmove eax, ecx
mov ecx, dword [esi + 0x18]
or ecx, eax
mov dword [esi + 8], edi
mov eax, dword [ebp + 0x10]
imul ecx, dword [eax + 0x18]
mov eax, dword [ebp + 0x1c]
mov dword [eax + 4], ecx
cmp byte [0x4a49e1], 1
jne 0x472022
test byte [0x4a49e0], 1
jne 0x472045
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
mov ebx, edx
call fcn.00472e00
add esp, 8
mov edi, eax
mov dword [esi + 0xc], edx
push ebx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov ecx, eax
mov dword [esi + 0x20], edx
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x18]
mov eax, ecx
mul ebx
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], edx
cmp edi, 9
mov eax, dword [esi + 0xc]
sbb eax, 0
jae 0x472646
mov dword [esi + 0x10], edi
mov edx, edi
shl edx, 4
mov edi, dword [esi + 0x1c]
lea eax, [edi + edx]
cmp byte [edi + edx + 4], 0
jne 0x47174e
mov edx, dword [esi + 0x10]
shl edx, 4
movups xmm0, xmmword [eax]
lea edi, [esi + 0x70]
movups xmmword [edi + edx], xmm0
mov byte [eax + 4], 1
mov edx, dword [esi + 0x20]
imul edx, ebx
sar ebx, 0x1f
imul ecx, ebx
mov ebx, dword [esi + 0x18]
add ebx, edx
add ebx, ecx
mov dword [eax], 2
mov edi, dword [esi + 0x14]
mov dword [eax + 8], edi
mov dword [eax + 0xc], ebx
cmp byte [0x4a49e1], 1
jne 0x4720e3
test byte [0x4a49e0], 1
jne 0x472106
jmp 0x472609
mov edi, dword [esi + 0x2c]
test edi, edi
je 0x472797
lea eax, [edi + 8]
push 0xa8
push eax
push dword [ebp + 0x1c]
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edi, dword [edi]
cmp byte [0x4a49e1], 1
mov dword [esi + 0x2c], edi
jne 0x472123
test byte [0x4a49e0], 1
jne 0x472146
jmp 0x472609
movzx eax, word [edi + 1]
mov ecx, dword [ebp + 0x10]
imul eax, dword [ecx + 0x14]
add dword [esi + 0x24], eax
add edi, 3
mov dword [esi + 8], edi
cmp byte [0x4a49e1], 1
jne 0x471f2f
test byte [0x4a49e0], 1
jne 0x471f52
jmp 0x472609
mov eax, dword [ebp + 0x10]
movzx eax, byte [eax + 0xc]
mov ecx, dword [ebp + 8]
push 0
push eax
push edx
lea eax, [esi + 8]
push eax
call fcn.00472bd0
mov dword [esi + 0x24], eax
cmp byte [0x4a49e1], 1
jne 0x471f6c
test byte [0x4a49e0], 1
jne 0x471f8f
jmp 0x472609
push edx
lea edi, [esi + 8]
push edi
mov edi, edx
call fcn.00472e00
add esp, 8
cmp eax, 9
sbb edx, 0
jae 0x472730
mov ebx, eax
push edi
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov dword [esi + 0x10], ebx
mov ebx, eax
mov edi, edx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x18]
mov eax, ebx
mul ecx
imul edi, ecx
sar ecx, 0x1f
imul ecx, ebx
mov ebx, dword [esi + 0x10]
add edi, edx
add edi, ecx
xor edx, edx
mov dword [esi + 0x14], eax
mov ecx, eax
neg ecx
sbb edx, edi
mov dword [esi + 0xc], edx
mov edx, ebx
shl edx, 4
mov eax, dword [esi + 0x1c]
cmp byte [eax + edx + 4], 0
lea edx, [eax + edx]
jne 0x4718ba
shl ebx, 4
movups xmm0, xmmword [edx]
lea eax, [esi + 0x70]
movups xmmword [eax + ebx], xmm0
mov byte [edx + 4], 1
mov dword [edx], 2
mov dword [edx + 8], ecx
mov eax, dword [esi + 0xc]
mov dword [edx + 0xc], eax
cmp byte [0x4a49e1], 1
jne 0x472164
test byte [0x4a49e0], 1
jne 0x472187
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov edi, eax
cmp eax, 9
mov eax, edx
sbb eax, 0
jae 0x4726f4
mov ebx, edx
mov eax, edi
shl eax, 4
mov ecx, dword [esi + 0x1c]
cmp byte [ecx + eax + 4], 1
jne 0x471928
mov ecx, edi
shl ecx, 4
lea edx, [esi + 0x70]
movups xmm0, xmmword [edx + ecx]
add eax, dword [esi + 0x1c]
movups xmmword [eax], xmm0
cmp byte [0x4a49e1], 1
jne 0x4721a0
test byte [0x4a49e0], 1
jne 0x4721c3
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov edi, eax
cmp eax, 9
mov eax, edx
sbb eax, 0
jae 0x4726dd
mov ebx, edx
mov ecx, edi
shl ecx, 4
mov edx, dword [esi + 0x1c]
lea eax, [edx + ecx]
cmp byte [edx + ecx + 4], 0
jne 0x47198b
mov ecx, edi
shl ecx, 4
movups xmm0, xmmword [eax]
lea edx, [esi + 0x70]
movups xmmword [edx + ecx], xmm0
mov byte [eax + 4], 1
mov dword [eax], 1
cmp byte [0x4a49e1], 1
jne 0x4721da
test byte [0x4a49e0], 1
jne 0x4721fd
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + 4], eax
cmp byte [0x4a49e1], 1
jne 0x471fa4
test byte [0x4a49e0], 1
jne 0x471fc7
jmp 0x472609
mov ecx, eax
mov eax, dword [ebp + 0x1c]
mov dword [eax], 0
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 0
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov edi, eax
cmp eax, 0xffffffff
mov eax, edx
sbb eax, 0
jae 0x47286b
mov ebx, edx
add dword [esi + 8], edi
cmp byte [0x4a49e1], 1
jne 0x471fdf
test byte [0x4a49e0], 1
jne 0x472002
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
mov ebx, edx
call fcn.00472e00
add esp, 8
mov edi, eax
mov dword [esi + 0x14], edx
push ebx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov dword [esi + 0xc], edi
cmp edi, 9
mov edi, dword [esi + 0x14]
mov ecx, edi
sbb ecx, 0
jae 0x4726c6
mov ebx, edx
cmp eax, 9
mov ecx, edx
sbb ecx, 0
jae 0x47276c
mov dword [esi + 0x10], eax
mov ecx, dword [esi + 0xc]
shl ecx, 4
mov edx, dword [esi + 0x1c]
lea eax, [edx + ecx]
cmp byte [edx + ecx + 4], 0
jne 0x471aa7
mov ecx, dword [esi + 0xc]
shl ecx, 4
movups xmm0, xmmword [eax]
lea edx, [esi + 0x70]
movups xmmword [edx + ecx], xmm0
mov byte [eax + 4], 1
mov dword [eax], 5
mov ecx, dword [esi + 0x10]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
cmp byte [0x4a49e1], 1
jne 0x472423
test byte [0x4a49e0], 1
jne 0x472446
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov edi, eax
cmp eax, 9
mov eax, edx
sbb eax, 0
jae 0x472744
mov ebx, edx
mov ecx, edi
shl ecx, 4
mov edx, dword [esi + 0x1c]
lea eax, [edx + ecx]
cmp byte [edx + ecx + 4], 0
jne 0x471b19
mov ecx, edi
shl ecx, 4
movups xmm0, xmmword [eax]
lea edx, [esi + 0x70]
movups xmmword [edx + ecx], xmm0
mov byte [eax + 4], 1
mov dword [eax], 0
cmp byte [0x4a49e1], 1
jne 0x472214
test byte [0x4a49e0], 1
jne 0x472237
jmp 0x472609
push edx
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
cmp eax, 9
mov ecx, edx
sbb ecx, 0
jae 0x47271c
mov dword [esi + 0x30], edx
mov dword [esi + 0x20], eax
mov edx, dword [esi + 8]
mov dword [esi + 0x10], 0
mov ecx, 0xfffffff9
mov dword [esi + 0x14], 0
mov dword [esi + 0x18], edx
nop dword [eax + eax]
cmp edx, dword [esi + 0x28]
je 0x472831
add ecx, 7
movzx eax, byte [edx]
mov byte [esi + 0xc], al
and al, 0x7f
movzx edi, al
xor eax, eax
shld eax, edi, cl
inc edx
shl edi, cl
test cl, 0x20
cmovne eax, edi
mov ebx, 0
cmovne edi, ebx
or dword [esi + 0x14], eax
movzx eax, byte [esi + 0xc]
or dword [esi + 0x10], edi
inc dword [esi + 0x18]
test al, al
js 0x471b80
cmp al, 0x40
setae dl
cmp ecx, 0x39
setb al
add cl, 7
mov edi, 0xffffffff
shl edi, cl
test cl, 0x20
mov ecx, 0xffffffff
cmovne ecx, edi
cmovne edi, ebx
test dl, al
cmove edi, ebx
cmove ecx, ebx
mov edx, dword [esi + 0x10]
or edx, edi
mov eax, dword [esi + 0x18]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x18]
mov dword [esi + 0x10], edx
mov eax, edx
mul ebx
mov dword [esi + 0x18], eax
mov dword [esi + 0xc], edx
mov edi, dword [esi + 0x20]
mov eax, edi
shl eax, 4
mov edx, dword [esi + 0x1c]
cmp byte [edx + eax + 4], 0
lea eax, [edx + eax]
jne 0x471c2f
mov edx, edi
shl edx, 4
movups xmm0, xmmword [eax]
lea edi, [esi + 0x70]
movups xmmword [edi + edx], xmm0
mov byte [eax + 4], 1
mov edx, dword [esi + 0x14]
or edx, ecx
imul edx, ebx
sar ebx, 0x1f
mov ecx, dword [esi + 0x10]
imul ecx, ebx
mov edi, dword [esi + 0xc]
add edi, ecx
add edi, edx
mov dword [eax], 2
mov ebx, dword [esi + 0x18]
mov dword [eax + 8], ebx
mov dword [esi + 0xc], edi
mov dword [eax + 0xc], edi
cmp byte [0x4a49e1], 1
jne 0x4723e3
test byte [0x4a49e0], 1
mov edi, dword [esi + 0x20]
jne 0x472409
jmp 0x472609
push edx
lea edi, [esi + 8]
push edi
call fcn.00472e00
add esp, 8
cmp eax, 9
mov ecx, edx
sbb ecx, 0
jae 0x472708
mov dword [esi + 0x10], edx
mov ecx, eax
shl ecx, 4
mov edx, dword [esi + 0x1c]
lea ebx, [edx + ecx]
cmp byte [edx + ecx + 4], 0
jne 0x471cbe
mov ecx, eax
shl ecx, 4
movups xmm0, xmmword [ebx]
lea edx, [esi + 0x70]
movups xmmword [edx + ecx], xmm0
mov byte [ebx + 4], 1
mov dword [esi + 0xc], eax
mov ecx, dword [esi + 8]
mov dword [ebx], 6
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], 0
push dword [esi + 0x28]
push edi
call fcn.00472e00
add esp, 8
mov ebx, eax
cmp eax, 0xffffffff
mov eax, edx
sbb eax, 0
jae 0x472895
mov edi, edx
add dword [esi + 8], ebx
cmp byte [0x4a49e1], 1
jne 0x4722e2
test byte [0x4a49e0], 1
jne 0x472305
jmp 0x472609
push edx
lea edi, [esi + 8]
push edi
mov edi, edx
call fcn.00472e00
add esp, 8
mov ebx, eax
cmp eax, 9
mov dword [esi + 0x20], edx
mov eax, edx
sbb eax, 0
jae 0x4726a2
push edi
lea eax, [esi + 8]
push eax
call fcn.00472e00
add esp, 8
mov ecx, eax
mov dword [esi + 0x18], edx
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + 0x18]
mov eax, ecx
mul edi
mov dword [esi + 0x14], eax
mov dword [esi + 0xc], edx
mov dword [esi + 0x10], ebx
shl ebx, 4
mov edx, dword [esi + 0x1c]
cmp byte [edx + ebx + 4], 0
lea eax, [edx + ebx]
jne 0x471d7f
mov ebx, dword [esi + 0x10]
shl ebx, 4
movups xmm0, xmmword [eax]
lea edx, [esi + 0x70]
movups xmmword [edx + ebx], xmm0
mov byte [eax + 4], 1
mov ebx, dword [esi + 0x18]
imul ebx, edi
sar edi, 0x1f
imul ecx, edi
mov edx, dword [esi + 0xc]
add edx, ebx
add edx, ecx
mov dword [eax], 4
mov ebx, dword [esi + 0x14]
mov dword [eax + 8], ebx
mov dword [esi + 0xc], edx
mov dword [eax + 0xc], edx
cmp byte [0x4a49e1], 1
jne 0x47224e
test byte [0x4a49e0], 1
mov edi, dword [esi + 0x10]
jne 0x472274
jmp 0x472609
mov ecx, ebx
and cl, 0x3f
mov eax, ebx
shr eax, 6
jmp dword [eax*4 + 0x47296c]
movzx eax, cl
mov ecx, dword [ebp + 0x10]
imul eax, dword [ecx + 0x14]
add dword [esi + 0x24], eax
cmp byte [0x4a49e1], 1
jne 0x472547
test byte [0x4a49e0], 1
jne 0x47256a
jmp 0x472609
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push edi
push str.DW_CFA_GNU_args_size__llu__n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x471e75
push 2
call dword [0x4a3560]
add esp, 4
push str.DW_CFA_remember_state_n
push eax
call fcn.00474010
add esp, 8
mov dword [esi + 0x2c], edi
jmp 0x472609
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push 0
push dword [esi + 0x24]
push str.DW_CFA_advance_loc1:_new_offset_llu_n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push 0
push dword [esi + 0x24]
push str.DW_CFA_advance_loc4:_new_offset_llu_n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push str.DW_CFA_nop_n
jmp 0x472156
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push 0
push dword [esi + 0x24]
push str.DW_CFA_advance_loc2:_new_offset_llu_n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push str.DW_CFA_set_loc_n
jmp 0x472156
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
mov ecx, dword [ebp + 0x1c]
push dword [ecx + 4]
push str.DW_CFA_def_cfa_offset__d__n
jmp 0x47205b
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push edi
mov ecx, dword [ebp + 0x1c]
push dword [ecx + 0xc]
push dword [ecx + 8]
push str.DW_CFA_def_cfa_expression_expression0x_llx__length_llu__n
jmp 0x47245e
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
mov ecx, dword [ebp + 0x1c]
push dword [ecx + 4]
push str.DW_CFA_def_cfa_offset_sf__d__n
push eax
call fcn.00474010
add esp, 0xc
jmp 0x472609
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push edi
push str.DW_CFA_def_cfa_register__llu__n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push dword [esi + 0x10]
push ebx
push dword [esi + 0xc]
push edi
push str.DW_CFA_def_cfa_reg_llu__offset_llu__n
jmp 0x47245e
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push edi
push dword [esi + 0xc]
push dword [esi + 0x10]
push str.DW_CFA_offset_extended_reg_llu__offset_lld__n
jmp 0x47245e
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push str.DW_CFA_restore_state_n
push eax
call fcn.00474010
add esp, 8
jmp 0x472609
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push edi
push dword [esi + 0x14]
push str.DW_CFA_GNU_negative_offset_extended__lld__n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push edi
push str.DW_CFA_restore_extended_reg_llu__n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push edi
push str.DW_CFA_undefined_reg_llu__n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push edi
push str.DW_CFA_same_value_reg_llu__n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
mov edi, dword [esi + 0x10]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push dword [esi + 0xc]
push ebx
push dword [esi + 0x20]
push edi
push str.DW_CFA_val_offset_reg_llu__offset_lld_n
jmp 0x47245e
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0xc]
mov ecx, eax
shl ecx, 4
push edi
push ebx
mov edx, dword [esi + 0x1c]
push dword [edx + ecx + 0xc]
push dword [edx + ecx + 8]
push dword [esi + 0x10]
push eax
push str.DW_CFA_val_expression_reg_llu__expression0x_llx__length_llu__n
jmp 0x472331
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0xc]
mov ecx, eax
shl ecx, 4
push edi
push ebx
mov edx, dword [esi + 0x1c]
push dword [edx + ecx + 0xc]
push dword [edx + ecx + 8]
push dword [esi + 0x10]
push eax
push str.DW_CFA_expression_reg_llu__expression0x_llx__length_llu__n
push dword [esi + 0x14]
call fcn.00474010
add esp, 0x20
jmp 0x472609
push str.LIBUNWIND_PRINT_DWARF
mov dword [esi + 0x10], ecx
mov ebx, edx
call sub.msvcrt.dll_getenv
mov edx, ebx
mov ecx, dword [esi + 0x10]
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
mov eax, dword [esi + 0x18]
or eax, dword [esi + 0xc]
mov ebx, dword [esi + 0x14]
imul eax, ebx
sar ebx, 0x1f
imul ecx, ebx
add edx, ecx
add edx, eax
push 2
mov ebx, edx
call dword [0x4a3560]
add esp, 4
push ebx
push dword [esi + 0x38]
push dword [esi + 0x20]
push edi
push str.DW_CFA_def_cfa_sf_reg_llu__offset_lld__n
jmp 0x47245e
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
mov edi, dword [esi + 0x20]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push dword [esi + 0xc]
push ebx
push dword [esi + 0x30]
push edi
push str.DW_CFA_val_offset_sf_reg_llu__offset_lld_n
jmp 0x47245e
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
mov edi, dword [esi + 0x20]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push dword [esi + 0xc]
push ebx
push dword [esi + 0x30]
push edi
push str.DW_CFA_offset_extended_sf_reg_llu__offset_lld__n
jmp 0x47245e
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push dword [esi + 0x10]
push edi
push dword [esi + 0xc]
push str.DW_CFA_register_reg_llu__reg2_llu__n
push eax
call fcn.00474010
add esp, 0x18
jmp 0x472609
cmp cl, 9
jae 0x4727b5
push edx
lea eax, [esi + 8]
push eax
mov ebx, ecx
call fcn.00472e00
add esp, 8
mov ecx, eax
mov dword [esi + 0x14], edx
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + 0x18]
mov eax, ecx
mul edi
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], edx
movzx edx, bl
mov dword [esi + 0x18], edx
shl edx, 4
mov eax, dword [esi + 0x1c]
cmp byte [eax + edx + 4], 0
lea eax, [eax + edx]
jne 0x4724bd
movups xmm0, xmmword [eax]
lea ebx, [esi + 0x70]
movups xmmword [ebx + edx], xmm0
mov byte [eax + 4], 1
mov edx, dword [esi + 0x14]
imul edx, edi
sar edi, 0x1f
imul ecx, edi
mov edi, dword [esi + 0x10]
add edi, edx
add edi, ecx
mov dword [eax], 2
mov ecx, dword [esi + 0xc]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edi
cmp byte [0x4a49e1], 1
jne 0x472581
test byte [0x4a49e0], 1
jne 0x4725a0
jmp 0x472609
movzx edi, cl
cmp cl, 9
jae 0x4727cf
mov eax, edi
shl eax, 4
mov ecx, dword [esi + 0x1c]
cmp byte [ecx + eax + 4], 1
jne 0x472528
mov ecx, dword [esi + 0x1c]
add ecx, eax
lea edx, [esi + 0x70]
movups xmm0, xmmword [edx + eax]
movups xmmword [ecx], xmm0
cmp byte [0x4a49e1], 1
jne 0x4725c2
test byte [0x4a49e0], 1
jne 0x4725e1
jmp 0x472609
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push 0
push dword [esi + 0x24]
push str.DW_CFA_advance_loc:_new_offset_llu_n
jmp 0x472600
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push edi
push dword [esi + 0xc]
push dword [esi + 0x18]
push str.DW_CFA_offset_reg_d__offset_lld__n
push eax
call fcn.00474010
add esp, 0x14
jmp 0x472609
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472609
push 2
call dword [0x4a3560]
add esp, 4
push 0
push edi
push str.DW_CFA_restore_reg_llu__n
nop word cs:[eax + eax]
push eax
call fcn.00474010
add esp, 0x10
mov edi, dword [esi + 8]
mov edx, dword [esi + 0x28]
cmp edi, edx
jae 0x471100
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x34]
jb 0x4711a0
jmp 0x471100
mov al, 1
jmp 0x472799
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_val_expression_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_offset_extended_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_def_cfa_register_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_val_offset_sf_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_def_cfa_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push dword [esi + 0x20]
push ebx
push str.libunwind:_malformed_DW_CFA_val_offset_DWARF_unwind__reg___llu__out_of_range_n_n
push eax
call fcn.00474010
add esp, 0x10
jmp 0x472787
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_register_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_undefined_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_restore_extended_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_expression_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_offset_extended_sf_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_GNU_negative_offset_extended_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_same_value_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_def_cfa_sf_DWARF_unwind__reg_too_big_n
jmp 0x47277e
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.libunwind:_malformed_DW_CFA_register_DWARF_unwind__reg2_too_big_n
push eax
call fcn.00474010
add esp, 8
push 2
call edi
add esp, 4
push eax
call sub.msvcrt.dll_fflush
add esp, 4
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp byte [0x4a49e1], 1
jne 0x4727f3
test byte [0x4a49e0], 1
je 0x472797
jmp 0x472812
movzx edi, cl
push 2
mov ebx, dword [fcn.0046fa90]
call ebx
add esp, 4
push 0
push edi
push str.libunwind:_malformed_DW_CFA_offset_DWARF_unwind__reg___llu__out_of_range_n
jmp 0x4727e4
push 2
mov ebx, dword [fcn.0046fa90]
call ebx
add esp, 4
push 0
push edi
push str.libunwind:_malformed_DW_CFA_restore_DWARF_unwind__reg___llu__out_of_range_n
push eax
call fcn.00474010
add esp, 0x10
push 2
call ebx
jmp 0x47278b
push str.LIBUNWIND_PRINT_DWARF
call sub.msvcrt.dll_getenv
add esp, 4
mov byte [0x4a49e1], 1
test eax, eax
setne byte [0x4a49e0]
je 0x472797
push 2
call dword [0x4a3560]
add esp, 4
push ebx
push str.unknown_CFA_opcode_0x_02X_n
push eax
call fcn.00474010
add esp, 0xc
jmp 0x472797
push 2
mov edi, dword [fcn.0046fa90]
call edi
add esp, 4
push str.truncated_sleb128_expression
push str.getSLEB128
push str.libunwind:__s____s_n
push eax
call fcn.00474010
add esp, 0x10
push 2
call edi
add esp, 4
push eax
call sub.msvcrt.dll_fflush
add esp, 4
call sub.msvcrt.dll_abort
push 0x269
push str._home_runner_work_llvm_mingw_llvm_mingw_llvm_project_libunwind_src_DwarfParser.hpp
push str.length___static_cast_pint_t__0____pointer_overflow_
call dword [sym.imp.msvcrt.dll__assert]
push 0x2cc
push str._home_runner_work_llvm_mingw_llvm_mingw_llvm_project_libunwind_src_DwarfParser.hpp
push str.length___static_cast_pint_t__0____pointer_overflow_
call dword [sym.imp.msvcrt.dll__assert]
push 0x279
push str._home_runner_work_llvm_mingw_llvm_mingw_llvm_project_libunwind_src_DwarfParser.hpp
push str.length___static_cast_pint_t__0____pointer_overflow_
call dword [sym.imp.msvcrt.dll__assert]
nop
mov ecx, 0x5004711
sbb byte [edi], al
retf 0x4714