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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x360
mov dword [esp + 0x68], edx
mov edx, dword [ebp + 8]
mov esi, ecx
lea ecx, [esp + 0x1d0]
push dword [ebp + 0xc]
call fcn.005aaae0
add esp, 4
mov eax, dword [esp + 0x1f8]
cmp eax, 4
jbe 0x5abe3a
mov eax, dword [esp + 0x1d4]
mov ecx, dword [esp + 0x1d8]
mov dword [esp + 4], eax
jmp 0x5abe47
lea edx, [esp + 0x1d8]
mov ecx, eax
mov dword [esp + 4], edx
mov eax, dword [esp + 0x68]
mov dword [esp + 0x188], esi
mov ebx, dword [eax + 0x28]
cmp ebx, 4
mov dword [esp + 0xe4], ebx
jbe 0x5abe71
mov edx, dword [eax + 4]
mov ebx, dword [eax + 8]
mov dword [esp + 0x6c], edx
cmp ecx, ebx
jb 0x5abe7c
jmp 0x5abef0
add eax, 8
mov dword [esp + 0x6c], eax
cmp ecx, ebx
jae 0x5abef0
mov eax, dword [esp + 0xe4]
cmp eax, 5
jb 0x5abe8f
mov eax, dword [esp + 0x68]
mov eax, dword [eax + 8]
test eax, eax
je 0x5abef6
mov ecx, dword [esp + 0x68]
lea eax, [esp + 0x1d0]
mov dword [esp + 0x2f8], 2
mov dword [esp + 0x264], eax
mov dword [esp + 0x260], 0
mov eax, dword [ecx + 0x90]
cmp eax, 2
mov dword [esp + 0x1c4], eax
jne 0x5ac01b
mov esi, ecx
lea eax, [ecx + 0x60]
lea ecx, [esp + 0x70]
lea edx, [esp + 0x1d0]
push esi
push eax
call fcn.0053baf0
add esp, 8
jmp 0x5ae2a6
jbe 0x5abfbe
mov edi, dword [esp + 0x188]
mov esi, 1
movsd xmm0, qword [esp + 0x200]
movsd xmm1, qword [esp + 0x208]
movsd xmm2, qword [esp + 0x210]
movsd xmm3, qword [esp + 0x218]
movsd xmm4, qword [esp + 0x220]
mov eax, dword [esp + 0x228]
movsd qword [esp + 0x328], xmm0
movsd qword [esp + 0x330], xmm1
movsd qword [esp + 0x338], xmm2
movsd qword [esp + 0x340], xmm3
movsd qword [esp + 0x348], xmm4
mov dword [esp + 0x350], eax
mov dword [edi + 0x30], eax
movsd qword [edi + 0x28], xmm4
movsd qword [edi + 0x20], xmm3
movsd qword [edi + 0x18], xmm2
movsd qword [edi + 0x10], xmm1
movsd qword [edi + 8], xmm0
mov dword [edi + 4], esi
mov dword [edi], 1
mov eax, dword [esp + 0x1f8]
cmp eax, 5
jb 0x5abfb6
test eax, 0x1fffffff
je 0x5abfb6
push dword [esp + 0x1d4]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, ecx
shl ebx, 3
shl esi, 3
nop word cs:[eax + eax]
test esi, esi
je 0x5abef6
test ebx, ebx
je 0x5abef6
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x6c]
mov dword [esp], esi
mov edx, dword [eax + esi - 8]
mov eax, dword [eax + esi - 4]
mov edi, dword [ecx + ebx - 8]
mov ecx, dword [ecx + ebx - 4]
cmp edx, edi
mov esi, eax
sbb esi, ecx
mov esi, dword [esp]
jb 0x5abe7c
add esi, 0xfffffff8
add ebx, 0xfffffff8
cmp edi, edx
sbb ecx, eax
jae 0x5abfd0
jmp 0x5abef6
mov edx, dword [ecx + 0x140]
test edx, edx
je 0x5aea4b
cmp edx, 1
je 0x5aea5e
mov esi, dword [ecx + 0x138]
lea eax, [ecx + 0x90]
lea ecx, [esp + 0x150]
lea edx, [esp + 0x1d0]
push esi
push eax
call fcn.0053baf0
add esp, 8
mov ecx, dword [esp + 0x178]
cmp ecx, 5
mov eax, ecx
jb 0x5ac06b
mov eax, dword [esp + 0x158]
test eax, eax
mov eax, dword [esp + 0x68]
je 0x5ac0d7
movsd xmm1, qword [esp + 0x170]
movsd xmm2, qword [esp + 0x168]
movsd xmm0, qword [esp + 0x178]
movsd qword [esp + 0x28], xmm1
movsd xmm1, qword [esp + 0x160]
movsd qword [esp + 0x20], xmm2
movsd xmm2, qword [esp + 0x150]
movsd qword [esp + 0x30], xmm0
movsd qword [esp + 0x18], xmm1
movsd xmm1, qword [esp + 0x158]
movsd qword [esp + 8], xmm2
movsd qword [esp + 0x10], xmm1
mov byte [esp + 0x38], 2
jmp 0x5ac260
mov eax, dword [0x6d6b64]
mov dword [esp + 4], ecx
lea ecx, [esp + 0xa0]
lea edx, [esp + 8]
mov dword [esp + 0xc8], 0
mov dword [esp], esi
mov dword [esp + 0xa0], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
call fcn.005b0940
movsd xmm3, qword [esp + 0xc8]
movsd xmm2, qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
lea esi, [esp + 0x10]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov edx, dword [esp + 0xc]
nop
mov ebx, dword [esp + 0x30]
mov ecx, esi
cmp ebx, 5
mov edi, ebx
jb 0x5ac193
mov edi, dword [esp + 0x10]
mov ecx, edx
test edi, edi
je 0x5ac1bd
test ecx, ecx
je 0x5ac1bd
mov eax, dword [ecx + edi*8 - 8]
or eax, dword [ecx + edi*8 - 4]
jne 0x5ac1bd
cmp ebx, 5
lea ecx, [esp + 0x30]
jb 0x5ac1b4
mov ebx, dword [esp + 0x10]
mov ecx, esi
test ebx, ebx
je 0x5ac180
dec ebx
mov dword [ecx], ebx
jmp 0x5ac180
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
lea eax, [esp + 0x118]
lea ecx, [esp + 8]
mov edx, 1
movsd qword [esp + 0x138], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x130], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0x128], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x118], xmm2
movsd qword [esp + 0x120], xmm1
push eax
call fcn.005aeba0
add esp, 4
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x68]
mov esi, dword [esp]
cmp ecx, 5
jb 0x5ac260
test ecx, 0x1fffffff
je 0x5ac260
push dword [esp + 0x154]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x68]
cmp dword [esp + 8], 2
je 0x5aeafe
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
add esi, 0x30
movsd xmm0, qword [esp + 0x38]
cmp dword [esp + 0x260], 1
movsd qword [esp + 0x178], xmm2
movsd qword [esp + 0x170], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x180], xmm0
movsd qword [esp + 0x168], xmm2
movsd qword [esp + 0x160], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x158], xmm1
movsd qword [esp + 0x150], xmm2
je 0x5ac2ea
mov edx, dword [esp + 0x264]
jmp 0x5ac2f1
lea edx, [esp + 0x268]
add eax, 0xc0
lea ecx, [esp + 0x70]
push esi
push eax
call fcn.0053baf0
add esp, 8
mov ecx, dword [esp + 0x98]
cmp ecx, 5
mov eax, ecx
jb 0x5ac316
mov eax, dword [esp + 0x78]
test eax, eax
je 0x5ac378
movsd xmm1, qword [esp + 0x90]
movsd xmm2, qword [esp + 0x88]
movsd xmm0, qword [esp + 0x98]
movsd qword [esp + 0x28], xmm1
movsd xmm1, qword [esp + 0x80]
movsd qword [esp + 0x20], xmm2
movsd xmm2, qword [esp + 0x70]
movsd qword [esp + 0x30], xmm0
movsd qword [esp + 0x18], xmm1
movsd xmm1, qword [esp + 0x78]
movsd qword [esp + 8], xmm2
movsd qword [esp + 0x10], xmm1
mov byte [esp + 0x38], 2
jmp 0x5ac4f0
mov eax, dword [0x6d6b64]
mov dword [esp], ecx
lea ecx, [esp + 0xa0]
lea edx, [esp + 8]
mov dword [esp + 0xc8], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
call fcn.005b0940
movsd xmm3, qword [esp + 0xc8]
movsd xmm2, qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
lea ecx, [esp + 0x10]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov edx, dword [esp + 0xc]
nop dword [eax]
mov edi, dword [esp + 0x30]
mov ebx, ecx
cmp edi, 5
mov esi, edi
jb 0x5ac433
mov esi, dword [esp + 0x10]
mov ebx, edx
test esi, esi
je 0x5ac45d
test ebx, ebx
je 0x5ac45d
mov eax, dword [ebx + esi*8 - 8]
or eax, dword [ebx + esi*8 - 4]
jne 0x5ac45d
cmp edi, 5
lea esi, [esp + 0x30]
jb 0x5ac454
mov edi, dword [esp + 0x10]
mov esi, ecx
test edi, edi
je 0x5ac420
dec edi
mov dword [esi], edi
jmp 0x5ac420
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
lea eax, [esp + 0x118]
lea ecx, [esp + 8]
mov edx, 1
movsd qword [esp + 0x138], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x130], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0x128], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x118], xmm2
movsd qword [esp + 0x120], xmm1
push eax
call fcn.005aeba0
add esp, 4
mov eax, dword [esp]
cmp eax, 5
jb 0x5ac4f0
test eax, 0x1fffffff
je 0x5ac4f0
push dword [esp + 0x74]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 8], 2
je 0x5aeb17
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
movsd xmm0, qword [esp + 0x38]
lea ecx, [esp + 0x150]
lea edx, [esp + 0x118]
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x138], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x148], xmm0
movsd qword [esp + 0x130], xmm2
movsd qword [esp + 0x128], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x120], xmm1
movsd qword [esp + 0x118], xmm2
call fcn.005aed30
mov eax, dword [esp + 0x68]
mov ecx, 0x38
mov eax, dword [eax + 0x140]
mov dword [esp], eax
mul ecx
jo 0x5aeaf7
mov ebx, eax
test eax, eax
js 0x5aeaf7
mov eax, dword [esp + 0x68]
test ebx, ebx
mov esi, dword [eax + 0x138]
je 0x5ac5dd
mov eax, dword [0x6f1130]
test eax, eax
jne 0x5ac5c0
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x5ac5cf
mov dword [0x6f1130], eax
push ebx
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
mov edi, eax
test eax, eax
jne 0x5ac5e2
mov ecx, ebx
mov edx, 8
call fcn.0040a640
ud2
mov edi, 8
shr ebx, 3
mov ecx, 0x24924925
mov dword [esp + 0xd8], edi
mov eax, ebx
mov ebx, dword [esp]
mul ecx
mov dword [esp + 0xdc], edx
mov dword [esp + 0xe0], 0
lea eax, [ebx + ebx*2]
shl eax, 4
add eax, esi
cmp edx, ebx
mov dword [esp + 4], eax
jb 0x5aca72
xor ebx, ebx
cmp esi, dword [esp + 4]
je 0x5aca98
imul eax, ebx, 0x38
mov edx, esi
add edi, eax
jmp 0x5ac72e
add edx, 8
lea eax, [edx + eax*8]
lea ecx, [esp + 8]
mov dword [esp + 0x30], 0
mov dword [esp + 8], 0
push eax
call fcn.005b0d70
add esp, 4
lea eax, [esp + 0xc]
mov esi, dword [esp + 8]
mov edx, dword [esp]
movsd xmm1, qword [eax + 8]
movsd xmm0, qword [eax]
movsd xmm2, qword [eax + 0x18]
mov ecx, dword [eax + 0x28]
movsd qword [esp + 0xa8], xmm1
movsd xmm1, qword [eax + 0x10]
mov dword [esp + 0xc8], ecx
movsd qword [esp + 0xa0], xmm0
movsd qword [esp + 0xb8], xmm2
mov cl, 2
movsd qword [esp + 0xb0], xmm1
movsd xmm1, qword [eax + 0x20]
movsd qword [esp + 0xc0], xmm1
cmp esi, 2
je 0x5aca59
mov dword [edi], esi
add edx, 0x30
inc ebx
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
movsd qword [edi + 4], xmm0
movsd qword [edi + 0xc], xmm1
movsd xmm0, qword [esp + 0xb0]
movsd qword [edi + 0x14], xmm0
movsd xmm0, qword [esp + 0xb8]
movsd qword [edi + 0x1c], xmm0
movsd xmm0, qword [esp + 0xc0]
movsd qword [edi + 0x24], xmm0
mov eax, dword [esp + 0xc8]
mov dword [edi + 0x2c], eax
mov byte [edi + 0x30], cl
add edi, 0x38
cmp edx, dword [esp + 4]
je 0x5aca98
mov eax, dword [edx + 0x28]
cmp eax, 5
mov ecx, eax
jb 0x5ac73b
mov ecx, dword [edx + 8]
test ecx, ecx
mov dword [esp], edx
je 0x5ac760
cmp eax, 4
jbe 0x5ac640
mov eax, edx
mov edx, dword [edx + 4]
mov eax, dword [eax + 8]
jmp 0x5ac643
mov eax, dword [0x6d6b64]
lea ecx, [esp + 0xa0]
lea edx, [esp + 8]
mov dword [esp + 0xc8], 0
mov dword [esp + 0x6c], ebx
mov dword [esp + 0xa0], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
call fcn.005b0940
movsd xmm3, qword [esp + 0xc8]
movsd xmm2, qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov eax, dword [esp + 0xc]
nop word cs:[eax + eax]
nop dword [eax + eax]
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x10]
cmp ecx, 5
mov ebx, ecx
jb 0x5ac825
mov ebx, dword [esp + 0x10]
mov edx, eax
test ebx, ebx
je 0x5ac860
test edx, edx
je 0x5ac860
mov esi, dword [edx + ebx*8 - 8]
or esi, dword [edx + ebx*8 - 4]
jne 0x5ac860
cmp ecx, 5
lea edx, [esp + 0x30]
jb 0x5ac848
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x10]
test ecx, ecx
je 0x5ac810
dec ecx
mov dword [edx], ecx
jmp 0x5ac810
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
lea ecx, [esp + 8]
lea edx, [esp + 0xa0]
mov dword [esp + 0xa0], str._cargo_registry_src_github.com_1ecc6299db9ec823_utfx_0.1.0_src_ucstr.rs
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 2
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x10]
mov dword [esp + 0x30], 0
movsd qword [esp + 0x70], xmm2
mov dword [esp + 8], 0
movsd qword [esp + 0x78], xmm1
call fcn.005b0940
mov ebx, dword [esp + 0x30]
lea esi, [esp + 0x10]
cmp ebx, 5
jb 0x5ac90a
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x70]
mov edx, ebx
call fcn.005b0ea0
mov ecx, dword [esp + 0x98]
lea eax, [esp + 0x78]
cmp ecx, 5
jb 0x5ac92d
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
cmp ecx, ebx
jne 0x5aeae6
shl ebx, 3
push ebx
push esi
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov dword [esp + 0xe4], eax
nop word cs:[eax + eax]
nop dword [eax]
mov edx, dword [esp + 0x98]
lea ebx, [esp + 0x78]
cmp edx, 5
mov esi, edx
jb 0x5ac978
mov esi, dword [esp + 0x78]
mov ebx, ecx
test esi, esi
je 0x5ac9b0
test ebx, ebx
je 0x5ac9b0
mov eax, dword [ebx + esi*8 - 8]
or eax, dword [ebx + esi*8 - 4]
jne 0x5ac9b0
cmp edx, 5
lea esi, [esp + 0x98]
jb 0x5ac99e
mov edx, dword [esp + 0x78]
lea esi, [esp + 0x78]
test edx, edx
je 0x5ac960
dec edx
mov dword [esi], edx
jmp 0x5ac960
mov ecx, dword [esp + 0x30]
cmp ecx, 5
jb 0x5ac9e9
mov ebx, dword [esp + 0x6c]
mov edx, dword [esp]
mov esi, dword [esp + 0xe4]
test ecx, 0x1fffffff
je 0x5ac9f7
push dword [esp + 0xc]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp]
mov esi, dword [esp + 0x70]
jmp 0x5ac9f7
mov ebx, dword [esp + 0x6c]
mov edx, dword [esp]
mov esi, dword [esp + 0xe4]
lea eax, [esp + 0x98]
mov cl, 1
movsd xmm1, qword [eax - 0x1c]
movsd xmm0, qword [eax - 0x24]
movsd xmm2, qword [eax - 0xc]
movsd qword [esp + 0xa8], xmm1
movsd xmm1, qword [eax - 0x14]
movsd qword [esp + 0xa0], xmm0
movsd qword [esp + 0xb8], xmm2
movsd qword [esp + 0xb0], xmm1
movsd xmm1, qword [eax - 4]
mov eax, dword [eax + 4]
movsd qword [esp + 0xc0], xmm1
mov dword [esp + 0xc8], eax
cmp esi, 2
jne 0x5ac6c8
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_532d2b14c05f9bc20b2d27cbb5f4550d28343a36librarycore_src_strpattern.rs
mov edx, 0x2b
push 0x6d1360
call fcn.0045aec0
add esp, 4
ud2
lea ecx, [esp + 0xd8]
mov edx, ebx
call fcn.005b03f0
mov edi, dword [esp + 0xd8]
mov ebx, dword [esp + 0xe0]
cmp esi, dword [esp + 4]
jne 0x5ac62a
mov al, byte [esp + 0x180]
mov dword [esp + 0xe0], ebx
test al, al
jne 0x5acae2
lea edi, [esp + 0x150]
nop word cs:[eax + eax]
nop dword [eax + eax]
test ebx, ebx
je 0x5aea38
mov edx, dword [esp + 0xd8]
mov ecx, edi
call fcn.005afa70
movzx eax, byte [esp + 0x180]
test al, al
je 0x5acac0
cmp al, 1
mov eax, dword [esp + 0x68]
mov ecx, 1
je 0x5acaf5
mov ecx, dword [eax + 0x120]
mov esi, dword [esp + 0x178]
mov dword [esp + 0x6c], ebx
cmp esi, 4
jbe 0x5acb15
mov edx, dword [esp + 0x154]
mov esi, dword [esp + 0x158]
jmp 0x5acb1c
lea edx, [esp + 0x158]
mov dword [esp + 4], edx
mov ebx, dword [eax + 0x118]
mov dword [esp], ecx
cmp ebx, 4
jbe 0x5acb3c
mov edi, dword [eax + 0xf4]
mov ebx, dword [eax + 0xf8]
jmp 0x5acb42
lea edi, [eax + 0xf8]
lea edx, [esi + ebx + 1]
lea ecx, [esp + 0xa0]
call fcn.005469c0
mov edx, dword [esp + 0xc8]
cmp edx, 4
jbe 0x5acb6e
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0xa8]
jmp 0x5acb75
lea ecx, [esp + 0xa8]
mov eax, dword [esp + 4]
push ebx
push edi
push esi
push eax
call fcn.00549420
add esp, 0x10
movsd xmm3, qword [esp + 0xc8]
movsd xmm2, qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
lea ecx, [esp + 0x10]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov edx, dword [esp + 0xc]
nop word [eax + eax]
mov esi, dword [esp + 0x30]
mov edi, ecx
cmp esi, 5
mov ebx, esi
jb 0x5acc03
mov ebx, dword [esp + 0x10]
mov edi, edx
test ebx, ebx
je 0x5acc2d
test edi, edi
je 0x5acc2d
mov eax, dword [edi + ebx*8 - 8]
or eax, dword [edi + ebx*8 - 4]
jne 0x5acc2d
cmp esi, 5
lea edi, [esp + 0x30]
jb 0x5acc24
mov esi, dword [esp + 0x10]
mov edi, ecx
test esi, esi
je 0x5acbf0
dec esi
mov dword [edi], esi
jmp 0x5acbf0
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
movzx edx, byte [esp]
lea eax, [esp + 0x70]
lea ecx, [esp + 8]
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x78], xmm1
push eax
call fcn.005aeba0
add esp, 4
mov eax, dword [esp + 0x178]
cmp eax, 5
jb 0x5accca
mov esi, dword [esp + 0x6c]
test eax, 0x1fffffff
je 0x5accce
push dword [esp + 0x154]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov esi, dword [esp + 0xe0]
jmp 0x5accce
mov esi, dword [esp + 0x6c]
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
movsd xmm0, qword [esp + 0x38]
test esi, esi
movsd qword [esp + 0x178], xmm2
movsd qword [esp + 0x170], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x180], xmm0
movsd qword [esp + 0x168], xmm2
movsd qword [esp + 0x160], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x158], xmm1
movsd qword [esp + 0x150], xmm2
je 0x5aea72
mov edi, dword [esp + 0xd8]
lea ecx, [esp + 0x150]
mov edx, edi
call fcn.005af600
cmp esi, 1
je 0x5aea85
mov al, byte [esp + 0x180]
mov cl, 1
cmp al, 1
je 0x5acd7c
mov cl, byte [edi + 0x68]
test cl, cl
je 0x5acd98
cmp cl, 1
je 0x5acd7c
test al, al
je 0x5acd9c
mov cl, 2
mov esi, dword [esp + 0x178]
cmp esi, 4
jbe 0x5acdaa
mov eax, dword [esp + 0x154]
mov esi, dword [esp + 0x158]
jmp 0x5acdb1
test al, al
je 0x5acd7a
xor ecx, ecx
mov esi, dword [esp + 0x178]
cmp esi, 4
ja 0x5acd88
lea eax, [esp + 0x158]
mov dword [esp + 4], eax
mov ebx, dword [edi + 0x60]
mov dword [esp], ecx
cmp ebx, 4
jbe 0x5acdc8
mov ebx, dword [edi + 0x40]
mov edi, dword [edi + 0x3c]
jmp 0x5acdcb
add edi, 0x40
lea edx, [esi + ebx + 1]
lea ecx, [esp + 0xa0]
call fcn.005469c0
mov edx, dword [esp + 0xc8]
cmp edx, 4
jbe 0x5acdf7
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0xa8]
jmp 0x5acdfe
lea ecx, [esp + 0xa8]
push ebx
push edi
push esi
push dword [esp + 0x10]
call fcn.00549420
add esp, 0x10
movsd xmm3, qword [esp + 0xc8]
movsd xmm2, qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
lea ecx, [esp + 0x10]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov edx, dword [esp + 0xc]
nop
mov esi, dword [esp + 0x30]
mov edi, ecx
cmp esi, 5
mov ebx, esi
jb 0x5ace83
mov ebx, dword [esp + 0x10]
mov edi, edx
test ebx, ebx
je 0x5acead
test edi, edi
je 0x5acead
mov eax, dword [edi + ebx*8 - 8]
or eax, dword [edi + ebx*8 - 4]
jne 0x5acead
cmp esi, 5
lea edi, [esp + 0x30]
jb 0x5acea4
mov esi, dword [esp + 0x10]
mov edi, ecx
test esi, esi
je 0x5ace70
dec esi
mov dword [edi], esi
jmp 0x5ace70
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
movzx edx, byte [esp]
lea eax, [esp + 0x70]
lea ecx, [esp + 8]
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x78], xmm1
push eax
call fcn.005aeba0
add esp, 4
mov eax, dword [esp + 0x178]
cmp eax, 5
jb 0x5acf3d
test eax, 0x1fffffff
je 0x5acf3d
push dword [esp + 0x154]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
movsd xmm0, qword [esp + 0x38]
lea ecx, [esp + 0x150]
lea edx, [esp + 0x118]
movsd qword [esp + 0x178], xmm2
movsd qword [esp + 0x170], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x180], xmm0
movsd qword [esp + 0x168], xmm2
movsd qword [esp + 0x160], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x158], xmm1
movsd qword [esp + 0x150], xmm2
call fcn.005afa70
cmp dword [esp + 0x260], 1
jne 0x5ad011
mov esi, dword [esp + 0x28c]
movsd xmm0, qword [esp + 0x274]
movsd xmm2, qword [esp + 0x27c]
movsd xmm1, qword [esp + 0x284]
mov eax, dword [esp + 0x294]
mov edi, dword [esp + 0x290]
mov ecx, dword [esp + 0x270]
mov edx, dword [esp + 0x268]
mov ebx, dword [esp + 0x26c]
mov dword [esp + 0x100], esi
jmp 0x5ad07c
mov edx, dword [esp + 0x264]
mov eax, dword [edx + 0x28]
cmp eax, 4
jbe 0x5ad028
mov eax, dword [edx + 8]
mov edx, dword [edx + 4]
jmp 0x5ad02b
add edx, 8
lea eax, [edx + eax*8]
lea ecx, [esp + 8]
mov dword [esp + 0x30], 0
mov dword [esp + 8], 0
push eax
call fcn.005b0d70
add esp, 4
mov eax, dword [esp + 0x2c]
movsd xmm0, qword [esp + 0x14]
movsd xmm2, qword [esp + 0x1c]
movsd xmm1, qword [esp + 0x24]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x34]
movsd qword [esp + 0xe8], xmm0
movsd qword [esp + 0xf0], xmm2
movsd qword [esp + 0xf8], xmm1
cmp edi, 5
mov esi, edi
cmovae esi, ecx
test esi, esi
je 0x5ad0f9
movsd xmm1, qword [esp + 0xf0]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
movsd xmm0, qword [esp + 0xe8]
mov ecx, dword [esp + 0x100]
movsd qword [esp + 0x1c], xmm1
movsd xmm1, qword [esp + 0xf8]
movsd qword [esp + 0x14], xmm0
mov dword [esp + 0x2c], ecx
movsd qword [esp + 0x24], xmm1
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], eax
mov byte [esp + 0x38], 2
jmp 0x5ad277
mov eax, dword [0x6d6b64]
lea ecx, [esp + 0xa0]
lea edx, [esp + 8]
mov dword [esp + 0xc8], 0
mov dword [esp + 4], ebx
mov dword [esp], edi
mov dword [esp + 0xa0], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
call fcn.005b0940
movsd xmm3, qword [esp + 0xc8]
movsd xmm2, qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
lea edi, [esp + 0x10]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov edx, dword [esp + 0xc]
nop word cs:[eax + eax]
nop dword [eax + eax]
mov ebx, dword [esp + 0x30]
mov ecx, edi
cmp ebx, 5
mov esi, ebx
jb 0x5ad1c3
mov esi, dword [esp + 0x10]
mov ecx, edx
test esi, esi
je 0x5ad1ed
test ecx, ecx
je 0x5ad1ed
mov eax, dword [ecx + esi*8 - 8]
or eax, dword [ecx + esi*8 - 4]
jne 0x5ad1ed
cmp ebx, 5
lea ecx, [esp + 0x30]
jb 0x5ad1e4
mov ebx, dword [esp + 0x10]
mov ecx, edi
test ebx, ebx
je 0x5ad1b0
dec ebx
mov dword [ecx], ebx
jmp 0x5ad1b0
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
lea eax, [esp + 0x70]
lea ecx, [esp + 8]
mov edx, 1
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x78], xmm1
push eax
call fcn.005aeba0
add esp, 4
mov eax, dword [esp]
cmp eax, 5
jb 0x5ad277
test eax, 0x1fffffff
je 0x5ad277
push dword [esp + 4]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 8], 2
je 0x5aeb30
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
mov eax, dword [esp + 0x68]
movsd xmm0, qword [esp + 0x38]
movsd qword [esp + 0xc8], xmm2
movsd qword [esp + 0xc0], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
mov eax, dword [eax + 0x130]
movsd qword [esp + 0xd0], xmm0
movsd qword [esp + 0xb8], xmm2
movsd qword [esp + 0xb0], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
test eax, eax
movsd qword [esp + 0xa8], xmm1
movsd qword [esp + 0xa0], xmm2
je 0x5addf5
mov ecx, dword [esp + 0x68]
imul eax, eax, 0xa8
mov dword [esp + 0x6c], 0
mov esi, dword [ecx + 0x128]
add eax, esi
mov dword [esp + 0x1c8], eax
jmp 0x5ad3c0
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
movsd xmm0, qword [esp + 0x38]
lea ecx, [esp + 0x150]
lea edx, [esp + 0x118]
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x138], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x148], xmm0
movsd qword [esp + 0x130], xmm2
movsd qword [esp + 0x128], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x120], xmm1
movsd qword [esp + 0x118], xmm2
call fcn.005afa70
mov esi, dword [esp + 0xe4]
cmp esi, dword [esp + 0x1c8]
je 0x5addf5
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0xe0]
lea ecx, [eax + 2]
cmp edx, ecx
jbe 0x5aea29
cmp byte [esi + 0x30], 0
je 0x5aea9b
mov edi, dword [esp + 0xd8]
imul ebx, ecx, 0x38
cmp byte [edi + ebx + 0x30], 1
je 0x5aeab4
mov eax, esi
lea esi, [edi + ebx]
lea ecx, [esp + 0x190]
lea edx, [esp + 0xa0]
mov dword [esp + 4], esi
push esi
mov dword [esp + 4], eax
push eax
call fcn.0053baf0
add esp, 8
mov esi, dword [esp + 0x1b8]
cmp esi, 5
mov eax, esi
jb 0x5ad42f
mov eax, dword [esp + 0x198]
test eax, eax
lea ecx, [esp + 0x70]
je 0x5ad480
lea eax, [edi + ebx + 0x30]
cmp byte [esp + 0xd0], 0
mov al, byte [eax]
je 0x5ad610
mov edx, dword [esp + 4]
test al, al
je 0x5ad6bc
movsd xmm1, qword [esp + 0x1b0]
lea ecx, [esp + 0xf]
movsd xmm2, qword [esp + 0x1a8]
movsd xmm0, qword [esp + 0x1b8]
mov al, 2
jmp 0x5ad7b2
mov eax, dword [0x6d6b64]
lea edx, [esp + 8]
mov dword [esp + 0x98], 0
mov dword [esp + 0x70], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
call fcn.005460e0
movsd xmm3, qword [esp + 0x98]
movsd xmm2, qword [esp + 0x90]
movsd xmm0, qword [esp + 0x70]
movsd xmm1, qword [esp + 0x78]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0x88]
movsd xmm2, qword [esp + 0x80]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov eax, dword [esp + 0xc]
nop dword [eax]
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x10]
cmp ecx, 5
mov edi, ecx
jb 0x5ad525
mov edi, dword [esp + 0x10]
mov edx, eax
test edi, edi
je 0x5ad560
test edx, edx
je 0x5ad560
mov ebx, dword [edx + edi*8 - 8]
or ebx, dword [edx + edi*8 - 4]
jne 0x5ad560
cmp ecx, 5
lea edx, [esp + 0x30]
jb 0x5ad548
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x10]
test ecx, ecx
je 0x5ad510
dec ecx
mov dword [edx], ecx
jmp 0x5ad510
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
lea eax, [esp + 0xe8]
lea ecx, [esp + 8]
mov edx, 1
movsd qword [esp + 0x108], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x100], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x110], xmm0
movsd qword [esp + 0xf8], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0xe8], xmm2
movsd qword [esp + 0xf0], xmm1
push eax
call fcn.0053ac40
add esp, 4
cmp esi, 5
jb 0x5ad881
test esi, 0x1fffffff
je 0x5ad881
push dword [esp + 0x194]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
jmp 0x5ad881
mov edx, dword [esp + 4]
test al, al
je 0x5ad791
movsd xmm1, qword [esp + 0x1b0]
movsd xmm2, qword [esp + 0x1a8]
movsd xmm0, qword [esp + 0x1b8]
lea ecx, [esp + 0xe8]
lea esi, [esp + 0x70]
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x1a0]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [esp + 0x190]
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x198]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x78], xmm1
push esi
call fcn.0053b2e0
add esp, 4
movsd xmm1, qword [esp + 0x108]
lea ecx, [esp + 0xf]
movsd xmm2, qword [esp + 0x100]
movsd xmm0, qword [esp + 0x110]
mov al, 2
jmp 0x5ad757
movsd xmm1, qword [esp + 0x1b0]
movsd xmm2, qword [esp + 0x1a8]
movsd xmm0, qword [esp + 0x1b8]
lea ecx, [esp + 0xe8]
lea esi, [esp + 0x70]
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x1a0]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [esp + 0x190]
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x198]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x78], xmm1
push esi
call fcn.0053b2e0
add esp, 4
movsd xmm1, qword [esp + 0x108]
lea ecx, [esp + 0xf]
movsd xmm2, qword [esp + 0x100]
movsd xmm0, qword [esp + 0x110]
xor eax, eax
movsd qword [ecx + 0x20], xmm1
movsd xmm1, qword [esp + 0xf8]
movsd qword [ecx + 0x18], xmm2
movsd xmm2, qword [esp + 0xe8]
movsd qword [ecx + 0x28], xmm0
movsd qword [ecx + 0x10], xmm1
movsd xmm1, qword [esp + 0xf0]
movsd qword [ecx], xmm2
movsd qword [ecx + 8], xmm1
jmp 0x5ad7ee
movsd xmm1, qword [esp + 0x1b0]
lea ecx, [esp + 0xf]
movsd xmm2, qword [esp + 0x1a8]
movsd xmm0, qword [esp + 0x1b8]
xor eax, eax
movsd qword [ecx + 0x20], xmm1
movsd xmm1, qword [esp + 0x1a0]
movsd qword [ecx + 0x18], xmm2
movsd xmm2, qword [esp + 0x190]
movsd qword [ecx + 0x28], xmm0
movsd qword [ecx + 0x10], xmm1
movsd xmm1, qword [esp + 0x198]
movsd qword [ecx], xmm2
movsd qword [ecx + 8], xmm1
lea esi, [esp + 0x70]
movsd xmm0, qword [ecx + 0x28]
movsd xmm1, qword [ecx + 0x20]
movsd xmm2, qword [ecx + 0x18]
movsd xmm3, qword [ecx + 0x10]
movsd xmm4, qword [ecx]
movsd xmm5, qword [ecx + 8]
movzx edx, al
lea ecx, [esp + 8]
movsd qword [esp + 0x110], xmm0
movsd qword [esp + 0x108], xmm1
movsd qword [esp + 0x100], xmm2
movsd qword [esp + 0xf8], xmm3
movsd qword [esp + 0xf0], xmm5
movsd qword [esp + 0xe8], xmm4
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x90], xmm1
movsd qword [esp + 0x88], xmm2
movsd qword [esp + 0x80], xmm3
movsd qword [esp + 0x78], xmm5
movsd qword [esp + 0x70], xmm4
push esi
call fcn.0053ac40
add esp, 4
mov eax, dword [esp + 0x140]
lea esi, [esp + 0x118]
cmp eax, 5
jb 0x5ad8af
test eax, 0x1fffffff
je 0x5ad8af
push dword [esp + 0x11c]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
movsd xmm0, qword [esp + 0x38]
mov ecx, esi
lea edx, [esp + 0x150]
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x138], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x148], xmm0
movsd qword [esp + 0x130], xmm2
movsd qword [esp + 0x128], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x120], xmm1
movsd qword [esp + 0x118], xmm2
call fcn.005aed30
mov al, byte [esp + 0x148]
mov dl, 1
lea ecx, [esp + 0x70]
cmp al, 1
je 0x5ad970
mov edx, dword [esp]
mov dl, byte [edx + 0x68]
test dl, dl
je 0x5ad965
cmp dl, 1
je 0x5ad970
test al, al
jne 0x5addd7
xor edx, edx
mov ebx, dword [esp + 0x140]
lea eax, [esp + 0x120]
cmp ebx, 5
jae 0x5ad983
jmp 0x5ad991
test al, al
je 0x5addd7
xor edx, edx
nop
mov ebx, dword [esp + 0x140]
lea eax, [esp + 0x120]
cmp ebx, 5
jb 0x5ad991
mov eax, dword [esp + 0x11c]
mov ebx, dword [esp + 0x120]
mov dword [esp + 0x1cc], eax
mov eax, dword [esp]
mov dword [esp + 0x18c], edx
mov edi, dword [eax + 0x60]
cmp edi, 4
jbe 0x5ad9c0
mov esi, dword [eax + 0x3c]
mov edi, dword [eax + 0x40]
jmp 0x5ad9c3
lea esi, [eax + 0x40]
lea edx, [ebx + edi + 1]
call fcn.005469c0
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x78]
cmp edx, 5
jb 0x5ad9e4
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov eax, dword [esp]
inc dword [esp + 0x6c]
add eax, 0xa8
mov dword [esp + 0xe4], eax
push edi
push esi
push ebx
push dword [esp + 0x1d8]
call fcn.00549420
add esp, 0x10
movsd xmm3, qword [esp + 0x98]
movsd xmm2, qword [esp + 0x90]
movsd xmm0, qword [esp + 0x70]
movsd xmm1, qword [esp + 0x78]
lea ebx, [esp + 0x30]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0x88]
movsd xmm2, qword [esp + 0x80]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov eax, dword [esp + 0xc]
nop word cs:[eax + eax]
nop
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x10]
cmp ecx, 5
mov esi, ecx
jb 0x5ada85
mov esi, dword [esp + 0x10]
mov edx, eax
test esi, esi
je 0x5adab0
test edx, edx
je 0x5adab0
mov edi, dword [edx + esi*8 - 8]
or edi, dword [edx + esi*8 - 4]
jne 0x5adab0
cmp ecx, 5
mov edx, ebx
jb 0x5adaa6
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x10]
test ecx, ecx
je 0x5ada70
dec ecx
mov dword [edx], ecx
jmp 0x5ada70
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
movzx edx, byte [esp + 0x18c]
lea eax, [esp + 0xe8]
lea ecx, [esp + 8]
movsd qword [esp + 0x108], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x100], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x110], xmm0
movsd qword [esp + 0xf8], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0xe8], xmm2
movsd qword [esp + 0xf0], xmm1
push eax
call fcn.005aeba0
add esp, 4
mov eax, dword [esp + 0x140]
cmp eax, 5
jb 0x5adb4d
test eax, 0x1fffffff
je 0x5adb4d
push dword [esp + 0x11c]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
movsd xmm2, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x28]
mov edi, dword [esp + 4]
movsd xmm0, qword [esp + 0x38]
lea esi, [esp + 0x118]
mov ecx, esi
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x138], xmm1
movsd xmm2, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x18]
mov edx, edi
movsd qword [esp + 0x148], xmm0
movsd qword [esp + 0x130], xmm2
movsd qword [esp + 0x128], xmm1
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x120], xmm1
movsd qword [esp + 0x118], xmm2
call fcn.005af600
mov al, byte [esp + 0x148]
test al, al
jne 0x5adbf5
nop word cs:[eax + eax]
nop
mov ecx, esi
mov edx, edi
call fcn.005afa70
movzx eax, byte [esp + 0x148]
test al, al
je 0x5adbe0
cmp al, 1
mov eax, dword [esp]
mov dl, 1
je 0x5adc04
mov dl, byte [eax + 0xa0]
mov edi, dword [esp + 0x140]
lea esi, [esp + 0x120]
lea ecx, [esp + 0x70]
cmp edi, 5
jb 0x5adc29
mov esi, dword [esp + 0x11c]
mov edi, dword [esp + 0x120]
mov ebx, dword [eax + 0x98]
mov dword [esp + 0x18c], esi
mov byte [esp + 4], dl
cmp ebx, 4
jbe 0x5adc50
mov ebx, dword [eax + 0x78]
mov esi, dword [eax + 0x74]
jmp 0x5adc55
add eax, 0x78
mov esi, eax
lea edx, [edi + ebx + 1]
call fcn.005469c0
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x78]
cmp edx, 5
jb 0x5adc76
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
push ebx
push esi
push edi
push dword [esp + 0x198]
call fcn.00549420
add esp, 0x10
movsd xmm3, qword [esp + 0x98]
movsd xmm2, qword [esp + 0x90]
movsd xmm0, qword [esp + 0x70]
movsd xmm1, qword [esp + 0x78]
lea ebx, [esp + 0x30]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0x88]
movsd xmm2, qword [esp + 0x80]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov eax, dword [esp + 0xc]
nop word cs:[eax + eax]
nop
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x10]
cmp ecx, 5
mov esi, ecx
jb 0x5add05
mov esi, dword [esp + 0x10]
mov edx, eax
test esi, esi
je 0x5add30
test edx, edx
je 0x5add30
mov edi, dword [edx + esi*8 - 8]
or edi, dword [edx + esi*8 - 4]
jne 0x5add30
cmp ecx, 5
mov edx, ebx
jb 0x5add26
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x10]
test ecx, ecx
je 0x5adcf0
dec ecx
mov dword [edx], ecx
jmp 0x5adcf0
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
movzx edx, byte [esp + 4]
lea eax, [esp + 0xe8]
lea ecx, [esp + 8]
movsd qword [esp + 0x108], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x100], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x110], xmm0
movsd qword [esp + 0xf8], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0xe8], xmm2
movsd qword [esp + 0xf0], xmm1
push eax
call fcn.005aeba0
add esp, 4
mov eax, dword [esp + 0x140]
cmp eax, 5
jb 0x5ad330
test eax, 0x1fffffff
je 0x5ad330
push dword [esp + 0x11c]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
jmp 0x5ad330
mov dl, 2
mov ebx, dword [esp + 0x140]
lea eax, [esp + 0x120]
cmp ebx, 5
jae 0x5ad983
jmp 0x5ad991
mov ecx, dword [esp + 0xe0]
test ecx, ecx
je 0x5adec9
mov eax, dword [esp + 0xd8]
imul ecx, ecx, 0x38
add ecx, eax
jmp 0x5ade24
cmp ecx, eax
je 0x5ade75
mov byte [eax + 0x30], 1
mov edx, dword [eax + 0x28]
cmp edx, 4
jbe 0x5ade50
mov edx, dword [eax + 8]
test edx, edx
js 0x5aeacd
mov esi, dword [eax + 4]
add eax, 0x38
test edx, edx
jne 0x5ade60
jmp 0x5ade20
lea esi, [eax + 8]
add eax, 0x38
test edx, edx
je 0x5ade20
nop word [eax + eax]
mov dword [esi + 4], 0
mov dword [esi], 0
add esi, 8
dec edx
jne 0x5ade60
jmp 0x5ade20
mov eax, dword [esp + 0xe0]
mov esi, dword [esp + 0xd8]
mov dword [esp + 0xe0], 0
test eax, eax
je 0x5aded4
imul edi, eax, 0x38
jmp 0x5adea8
add esi, 0x38
add edi, 0xffffffc8
je 0x5aded4
mov eax, dword [esi + 0x28]
cmp eax, 5
jb 0x5adea0
test eax, 0x1fffffff
je 0x5adea0
push dword [esi + 4]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
jmp 0x5adea0
mov dword [esp + 0xe0], 0
mov byte [esp + 0xd0], 1
mov eax, dword [esp + 0xc8]
cmp eax, 4
jbe 0x5adf04
mov eax, dword [esp + 0xa8]
test eax, eax
js 0x5aeacd
mov ecx, dword [esp + 0xa4]
test eax, eax
jne 0x5adf10
jmp 0x5adf23
lea ecx, [esp + 0xa8]
test eax, eax
je 0x5adf23
nop
mov dword [ecx + 4], 0
mov dword [ecx], 0
add ecx, 8
dec eax
jne 0x5adf10
mov byte [esp + 0x148], 1
mov eax, dword [esp + 0x140]
cmp eax, 4
jbe 0x5adf53
mov eax, dword [esp + 0x120]
test eax, eax
js 0x5aeacd
mov ecx, dword [esp + 0x11c]
test eax, eax
jne 0x5adf60
jmp 0x5adf73
lea ecx, [esp + 0x120]
test eax, eax
je 0x5adf73
nop
mov dword [ecx + 4], 0
mov dword [ecx], 0
add ecx, 8
dec eax
jne 0x5adf60
mov al, byte [esp + 0x180]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x178]
test al, al
je 0x5ae089
cmp al, 1
jne 0x5ae09c
mov eax, dword [0x6d6b64]
mov dword [esp + 0x6c], edx
mov dword [esp], ecx
lea ecx, [esp + 0x70]
lea edx, [esp + 8]
mov dword [esp + 0x98], 0
mov dword [esp + 0x70], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
call fcn.005b0940
movsd xmm3, qword [esp + 0x98]
movsd xmm2, qword [esp + 0x90]
movsd xmm0, qword [esp + 0x70]
movsd xmm1, qword [esp + 0x78]
lea ebx, [esp + 0x10]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0x88]
movsd xmm2, qword [esp + 0x80]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov eax, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov dword [esp + 4], eax
nop dword [eax]
mov esi, dword [esp + 0x30]
mov ecx, ebx
cmp esi, 5
mov edi, esi
jb 0x5ae053
mov edi, dword [esp + 0x10]
mov ecx, edx
test edi, edi
je 0x5ae0fb
test ecx, ecx
je 0x5ae0fb
mov eax, dword [ecx + edi*8 - 8]
or eax, dword [ecx + edi*8 - 4]
jne 0x5ae0fb
cmp esi, 5
lea ecx, [esp + 0x30]
jb 0x5ae080
mov esi, dword [esp + 0x10]
mov ecx, ebx
test esi, esi
je 0x5ae040
dec esi
mov dword [ecx], esi
jmp 0x5ae040
mov esi, 2
cmp edx, 5
jae 0x5ae15e
jmp 0x5ae174
lea eax, [esp + 0x154]
mov esi, dword [esp + 0x150]
movsd xmm2, qword [eax + 0x18]
movsd xmm1, qword [eax + 0x10]
mov ecx, dword [eax + 0x28]
movsd xmm0, qword [eax + 0x20]
movsd qword [esp + 0x100], xmm2
movsd qword [esp + 0xf8], xmm1
movsd xmm2, qword [eax]
movsd xmm1, qword [eax + 8]
mov dword [esp + 0x110], ecx
movsd qword [esp + 0x108], xmm0
movsd qword [esp + 0xf0], xmm1
movsd qword [esp + 0xe8], xmm2
jmp 0x5ae174
lea ecx, [esp + 0xc]
mov esi, dword [esp + 4]
mov edx, dword [esp + 0x6c]
movsd xmm2, qword [ecx + 0x18]
movsd xmm1, qword [ecx + 0x10]
mov eax, dword [ecx + 0x28]
movsd xmm0, qword [ecx + 0x20]
movsd qword [esp + 0x100], xmm2
movsd qword [esp + 0xf8], xmm1
movsd xmm2, qword [ecx]
movsd xmm1, qword [ecx + 8]
mov ecx, dword [esp]
mov dword [esp + 0x110], eax
movsd qword [esp + 0x108], xmm0
movsd qword [esp + 0xf0], xmm1
movsd qword [esp + 0xe8], xmm2
cmp edx, 5
jb 0x5ae174
test edx, 0x1fffffff
je 0x5ae174
push ecx
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
cmp esi, 2
je 0x5aeb49
movsd xmm1, qword [esp + 0xf0]
mov eax, dword [esp + 0x110]
mov dword [esp + 0x70], esi
movsd xmm0, qword [esp + 0xe8]
movsd xmm2, qword [esp + 0x100]
movsd qword [esp + 0x7c], xmm1
movsd xmm1, qword [esp + 0xf8]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xc8]
movsd qword [esp + 0x74], xmm0
movsd qword [esp + 0x8c], xmm2
movsd qword [esp + 0x84], xmm1
movsd xmm1, qword [esp + 0x108]
cmp eax, 5
movsd qword [esp + 0x94], xmm1
jb 0x5ae20a
test eax, 0x1fffffff
je 0x5ae20a
push dword [esp + 0xa4]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0xe0]
test eax, eax
je 0x5ae259
mov esi, dword [esp + 0xd8]
imul edi, eax, 0x38
jmp 0x5ae238
add esi, 0x38
add edi, 0xffffffc8
je 0x5ae259
mov eax, dword [esi + 0x28]
cmp eax, 5
jb 0x5ae230
test eax, 0x1fffffff
je 0x5ae230
push dword [esi + 4]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
jmp 0x5ae230
mov eax, dword [esp + 0xdc]
test eax, eax
je 0x5ae27f
imul eax, eax, 0x38
test eax, eax
je 0x5ae27f
push dword [esp + 0xd8]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x140]
cmp eax, 5
jb 0x5ae2a6
test eax, 0x1fffffff
je 0x5ae2a6
push dword [esp + 0x11c]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x2f8], 2
jne 0x5ae31b
movsd xmm1, qword [esp + 0x90]
movsd xmm2, qword [esp + 0x88]
movsd xmm0, qword [esp + 0x98]
movsd qword [esp + 0x250], xmm1
movsd xmm1, qword [esp + 0x80]
movsd qword [esp + 0x248], xmm2
movsd xmm2, qword [esp + 0x70]
movsd qword [esp + 0x258], xmm0
movsd qword [esp + 0x240], xmm1
movsd xmm1, qword [esp + 0x78]
movsd qword [esp + 0x230], xmm2
movsd qword [esp + 0x238], xmm1
jmp 0x5ae584
mov esi, dword [esp + 0x98]
cmp esi, 4
jbe 0x5ae344
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x320]
cmp ebx, 4
ja 0x5ae354
lea eax, [esp + 0x300]
jmp 0x5ae362
lea edi, [esp + 0x78]
mov ebx, dword [esp + 0x320]
cmp ebx, 4
jbe 0x5ae33b
mov eax, dword [esp + 0x2fc]
mov ebx, dword [esp + 0x300]
mov dword [esp], eax
lea edx, [esi + ebx + 1]
lea ecx, [esp + 0xa0]
call fcn.005469c0
mov edx, dword [esp + 0xc8]
cmp edx, 4
jbe 0x5ae391
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0xa8]
jmp 0x5ae398
lea ecx, [esp + 0xa8]
mov eax, dword [esp]
push ebx
push eax
push esi
push edi
call fcn.00549420
add esp, 0x10
movsd xmm3, qword [esp + 0xc8]
movsd xmm2, qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
lea ecx, [esp + 0x10]
movsd qword [esp + 0x30], xmm3
movsd qword [esp + 0x28], xmm2
movsd xmm3, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x10], xmm1
movsd qword [esp + 0x20], xmm3
movsd qword [esp + 0x18], xmm2
mov edx, dword [esp + 0xc]
nop dword [eax]
mov esi, dword [esp + 0x30]
mov edi, ecx
cmp esi, 5
mov ebx, esi
jb 0x5ae423
mov ebx, dword [esp + 0x10]
mov edi, edx
test ebx, ebx
je 0x5ae44d
test edi, edi
je 0x5ae44d
mov eax, dword [edi + ebx*8 - 8]
or eax, dword [edi + ebx*8 - 4]
jne 0x5ae44d
cmp esi, 5
lea edi, [esp + 0x30]
jb 0x5ae444
mov esi, dword [esp + 0x10]
mov edi, ecx
test esi, esi
je 0x5ae410
dec esi
mov dword [edi], esi
jmp 0x5ae410
movsd xmm1, qword [esp + 0x28]
movsd xmm2, qword [esp + 0x20]
movsd xmm0, qword [esp + 0x30]
lea ecx, [esp + 8]
lea edx, [esp + 0x118]
movsd qword [esp + 0x138], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x130], xmm2
movsd xmm2, qword [esp + 8]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0x128], xmm1
movsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x118], xmm2
movsd qword [esp + 0x120], xmm1
push dword [esp + 0x68]
call fcn.00543330
add esp, 4
movsd xmm1, qword [esp + 0x58]
movsd xmm2, qword [esp + 0x50]
mov eax, dword [esp + 0x30]
movsd xmm0, qword [esp + 0x60]
movsd qword [esp + 0x250], xmm1
movsd xmm1, qword [esp + 0x48]
movsd qword [esp + 0x248], xmm2
movsd xmm2, qword [esp + 0x40]
cmp eax, 5
movsd qword [esp + 0x258], xmm0
movsd qword [esp + 0x240], xmm1
movsd xmm1, qword [esp + 0x38]
movsd qword [esp + 0x238], xmm2
movsd qword [esp + 0x230], xmm1
jb 0x5ae539
test eax, 0x1fffffff
je 0x5ae539
push dword [esp + 0xc]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x140]
cmp eax, 5
jb 0x5ae560
test eax, 0x1fffffff
je 0x5ae560
push dword [esp + 0x11c]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x98]
cmp eax, 5
jb 0x5ae584
test eax, 0x1fffffff
je 0x5ae584
push dword [esp + 0x74]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x1c4], 2
jne 0x5ae5bf
cmp dword [esp + 0x260], 0
je 0x5ae5bf
mov eax, dword [esp + 0x290]
cmp eax, 5
jb 0x5ae5bf
test eax, 0x1fffffff
je 0x5ae5bf
push dword [esp + 0x26c]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x2f8], 2
je 0x5ae5f0
mov eax, dword [esp + 0x320]
cmp eax, 5
jb 0x5ae5f0
test eax, 0x1fffffff
je 0x5ae5f0
push dword [esp + 0x2fc]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
movsd xmm1, qword [esp + 0x238]
movsd xmm2, qword [esp + 0x240]
movsd xmm0, qword [esp + 0x230]
mov eax, dword [esp + 0x68]
lea ecx, [esp + 8]
lea edx, [esp + 0x298]
movsd qword [esp + 0x2a0], xmm1
movsd xmm1, qword [esp + 0x248]
movsd qword [esp + 0x2a8], xmm2
movsd xmm2, qword [esp + 0x250]
movsd qword [esp + 0x298], xmm0
movsd qword [esp + 0x2b0], xmm1
movsd xmm1, qword [esp + 0x258]
movsd qword [esp + 0x2b8], xmm2
movsd qword [esp + 0x2c0], xmm1
push eax
add eax, 0x30
push eax
call fcn.0053baf0
add esp, 8
mov ecx, dword [esp + 0x1f8]
cmp ecx, 4
jbe 0x5ae6a8
mov edx, dword [esp + 0x1d4]
mov ecx, dword [esp + 0x1d8]
mov edi, dword [esp + 0x30]
cmp edi, 4
mov dword [esp], edi
ja 0x5ae6bb
lea esi, [esp + 0x10]
cmp ecx, edi
je 0x5ae6c7
jmp 0x5ae6f2
lea edx, [esp + 0x1d8]
mov edi, dword [esp + 0x30]
cmp edi, 4
mov dword [esp], edi
jbe 0x5ae69e
mov esi, dword [esp + 0xc]
mov edi, dword [esp + 0x10]
cmp ecx, edi
jne 0x5ae6f2
shl ecx, 3
shl edi, 3
nop dword [eax]
test ecx, ecx
je 0x5ae752
test edi, edi
je 0x5ae752
mov ebx, dword [edx + ecx - 8]
mov eax, dword [edx + ecx - 4]
add ecx, 0xfffffff8
xor eax, dword [esi + edi - 4]
xor ebx, dword [esi + edi - 8]
add edi, 0xfffffff8
or ebx, eax
je 0x5ae6d0
mov eax, dword [esp]
cmp eax, 5
jb 0x5ae712
test eax, 0x1fffffff
je 0x5ae712
push dword [esp + 0xc]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x2c0]
mov edi, dword [esp + 0x188]
mov esi, 0xf
cmp eax, 5
jb 0x5abf02
test eax, 0x1fffffff
je 0x5abf02
push dword [esp + 0x29c]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
jmp 0x5abf02
movsd xmm1, qword [esp + 0x2b8]
movsd xmm2, qword [esp + 0x2b0]
mov eax, dword [esp]
movsd xmm0, qword [esp + 0x2c0]
movsd qword [esp + 0x220], xmm1
movsd xmm1, qword [esp + 0x2a8]
movsd qword [esp + 0x218], xmm2
movsd xmm2, qword [esp + 0x298]
cmp eax, 5
movsd qword [esp + 0x228], xmm0
movsd qword [esp + 0x210], xmm1
movsd xmm1, qword [esp + 0x2a0]
movsd qword [esp + 0x200], xmm2
movsd qword [esp + 0x208], xmm1
jb 0x5ae7de
test eax, 0x1fffffff
je 0x5ae7de
push dword [esp + 0xc]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
movsd xmm0, qword [esp + 0x210]
movsd xmm1, qword [esp + 0x218]
movsd xmm2, qword [esp + 0x228]
movsd xmm3, qword [esp + 0x220]
movsd xmm4, qword [esp + 0x200]
movsd xmm5, qword [esp + 0x208]
lea ecx, [esp + 8]
lea edx, [esp + 0x2c8]
movsd qword [esp + 0x338], xmm0
movsd qword [esp + 0x340], xmm1
movsd qword [esp + 0x2c8], xmm4
movsd qword [esp + 0x2d0], xmm5
movsd qword [esp + 0x2d8], xmm0
movsd qword [esp + 0x2e0], xmm1
movsd qword [esp + 0x2e8], xmm3
movsd qword [esp + 0x2f0], xmm2
call fcn.005ab6f0
mov edx, dword [ebp + 0x10]
test edx, edx
js 0x5aeaf7
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0x10]
je 0x5ae8bb
mov eax, dword [0x6f1130]
test eax, eax
jne 0x5ae89b
call sub.KERNEL32.dll_GetProcessHeap
mov edx, dword [ebp + 0x10]
test eax, eax
je 0x5ae8ad
mov dword [0x6f1130], eax
push edx
push 8
push eax
call sub.KERNEL32.dll_HeapAlloc
mov edx, dword [ebp + 0x10]
mov edi, eax
test eax, eax
jne 0x5ae8c0
mov ecx, edx
mov edx, 1
call fcn.0040a640
ud2
mov edi, 1
mov ecx, edx
xor eax, eax
sub ecx, ebx
cmovb ecx, eax
cmp ecx, edx
ja 0x5aeb62
mov eax, edx
sub eax, ecx
cmp eax, ebx
jne 0x5aeb71
add ecx, edi
push ebx
push esi
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x1f8]
cmp eax, 4
jbe 0x5ae912
mov eax, dword [esp + 0x1d8]
test eax, eax
js 0x5aeacd
mov ecx, dword [esp + 0x1d4]
test eax, eax
jne 0x5ae920
jmp 0x5ae933
lea ecx, [esp + 0x1d8]
test eax, eax
je 0x5ae933
nop dword [eax]
mov dword [ecx + 4], 0
mov dword [ecx], 0
add ecx, 8
dec eax
jne 0x5ae920
mov eax, dword [esp + 0x2f0]
cmp eax, 4
jbe 0x5ae95b
mov eax, dword [esp + 0x2d0]
test eax, eax
js 0x5aeacd
mov ecx, dword [esp + 0x2cc]
test eax, eax
jne 0x5ae970
jmp 0x5ae983
lea ecx, [esp + 0x2d0]
test eax, eax
je 0x5ae983
nop word cs:[eax + eax]
mov dword [ecx + 4], 0
mov dword [ecx], 0
add ecx, 8
dec eax
jne 0x5ae970
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 8]
test ecx, ecx
je 0x5ae9a7
mov edx, eax
nop word cs:[eax + eax]
nop dword [eax + eax]
mov byte [edx], 0
inc edx
dec ecx
jne 0x5ae9a0
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0xc]
test ecx, ecx
js 0x5aeb84
mov edx, dword [ebp + 0x10]
je 0x5ae9c7
mov byte [eax], 0
inc eax
dec ecx
jne 0x5ae9c0
mov eax, dword [esp + 0x188]
cmp dword [esp + 0xc], 0
mov dword [eax + 4], edi
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax], 0
je 0x5ae9f5
push dword [esp + 8]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x2f0]
cmp eax, 5
jb 0x5abf8f
test eax, 0x1fffffff
je 0x5abf8f
push dword [esp + 0x2cc]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
jmp 0x5abf8f
push 0x6d0ef4
call fcn.0045a150
add esp, 4
ud2
xor ecx, ecx
xor edx, edx
push 0x6d0eb4
call fcn.0045a150
add esp, 4
ud2
xor ecx, ecx
xor edx, edx
push 0x6d0e74
call fcn.0045a150
add esp, 4
ud2
mov ecx, 1
push 0x6d0e84
call fcn.0045a150
add esp, 4
ud2
xor ecx, ecx
xor edx, edx
push 0x6d0ec4
call fcn.0045a150
add esp, 4
ud2
mov ecx, 1
mov edx, esi
push 0x6d0ed4
call fcn.0045a150
add esp, 4
ud2
mov ecx, 0x6878d5
mov edx, 0x29
push 0x687900
call fcn.0045aec0
add esp, 4
ud2
mov ecx, str.divide_by_zero_
mov edx, 0xf
push 0x687910
call fcn.0045aec0
add esp, 4
ud2
mov ecx, 0x688224
mov edx, 0x39
push 0x688260
call fcn.0045aec0
add esp, 4
ud2
mov edx, ebx
push 0x6d12d4
call fcn.0045f700
add esp, 4
ud2
call fcn.0040a620
ud2
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_532d2b14c05f9bc20b2d27cbb5f4550d28343a36librarycore_src_strpattern.rs
mov edx, 0x2b
push 0x6d0e94
call fcn.0045aec0
add esp, 4
ud2
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_532d2b14c05f9bc20b2d27cbb5f4550d28343a36librarycore_src_strpattern.rs
mov edx, 0x2b
push 0x6d0ea4
call fcn.0045aec0
add esp, 4
ud2
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_532d2b14c05f9bc20b2d27cbb5f4550d28343a36librarycore_src_strpattern.rs
mov edx, 0x2b
push 0x6d0ee4
call fcn.0045aec0
add esp, 4
ud2
mov ecx, str.failed_to_decrypt
mov edx, 0x11
push 0x6d0f18
call fcn.0045d290
add esp, 4
ud2
push 0x6d0f28
call fcn.0045a820
add esp, 4
ud2
mov ecx, eax
mov edx, ebx
push 0x6d0f38
call fcn.0045f700
add esp, 4
ud2
mov ecx, 0x6d123c
mov edx, 0x33
push 0x6d1270
call fcn.0045aec0
add esp, 4
ud2