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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1048
call fcn.004741ee
sub rsp, rax
movaps xmmword [rsp + 0x1030], xmm8
movaps xmmword [rsp + 0x1020], xmm7
movaps xmmword [rsp + 0x1010], xmm6
mov rax, qword [rcx]
cmp rax, 5
je 0x54d003
cmp eax, 4
je 0x54d003
cmp eax, 3
je 0x54d003
mov r14, rdx
mov rbx, rcx
cmp eax, 2
jne 0x54be91
mov qword [rsp + 0x60], r14
lea rdi, [rbx + 8]
mov eax, 0xe0
lea rcx, [rsp + 0x1b0]
add rcx, rax
mov qword [rsp + 0x140], rcx
lea rcx, [rsp + 0x330]
add rax, rcx
mov qword [rsp + 0x138], rax
mov eax, 0xb8
lea rcx, [rsp + 0x940]
add rcx, rax
mov qword [rsp + 0x130], rcx
lea rcx, [rbx + rax]
mov qword [rsp + 0x148], rcx
lea rcx, [rsp + 0x600]
add rax, rcx
mov qword [rsp + 0x128], rax
xorps xmm6, xmm6
lea rax, [rbx + 0x98]
mov qword [rsp + 0xb0], rax
lea rax, [rbx + 0x10]
mov qword [rsp + 0xc0], rax
lea rax, [rbx + 0xa8]
mov qword [rsp + 0xa8], rax
mov byte [rsp + 0x40], bpl
mov rbp, qword [rsp + 0x60]
mov r8, qword [rbp]
lea rcx, [rsp + 0x6e0]
mov rdx, qword [rsp + 0xb0]
call fcn.005523b8
movzx ebp, byte [rsp + 0x6e0]
cmp ebp, 5
jne 0x54cae6
mov r12, rsi
mov rax, qword [rdi]
mov qword [rdi], 2
cmp rax, 2
je 0x54a59b
mov qword [rsp + 0xc98], rax
mov ecx, 0xd
mov rax, rdi
lea rdi, [rsp + 0xca0]
mov rsi, qword [rsp + 0xc0]
rep movsq qword [rdi], qword [rsi]
mov rdi, rax
mov rcx, rax
lea rdx, [rsp + 0xc98]
mov rbp, qword [rsp + 0x60]
mov r8, rbp
call fcn.00542c37
mov rsi, r12
jmp 0x54a51b
mov rax, qword [rsp + 0x60]
mov r8, qword [rax]
lea rsi, [rsp + 0x820]
mov rcx, rsi
mov rdx, qword [rsp + 0x148]
call fcn.0054397e
mov rax, qword [rsp + 0x920]
cmp rax, 2
je 0x54cf8a
cmp eax, 3
je 0x54cf91
mov r8d, 0x100
lea rcx, [rsp + 0xa20]
mov rdx, rsi
call sub.ntdll.dll_memcpy
lea rax, [rsp + 0x920]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x110], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x120], rax
cmp qword [rsp + 0x110], 0
mov rax, qword [rsp + 0x118]
je 0x54a648
test rax, rax
mov bpl, byte [rsp + 0x40]
je 0x54d003
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x54d003
mov rsi, r12
add rax, 0xd0
jmp 0x54a66e
test rax, rax
mov bpl, byte [rsp + 0x40]
je 0x54d003
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x54d003
mov rsi, r12
add rax, 0x30
mov rax, qword [rax]
test al, 4
jne 0x54a835
mov qword [rsp + 0x80], rdi
mov r8d, 0x100
lea rcx, [rsp + 0x1b0]
lea rbp, [rsp + 0xa20]
mov rdx, rbp
call sub.ntdll.dll_memcpy
mov r8d, 0xe0
lea rsi, [rsp + 0x330]
mov rcx, rsi
mov rdx, rbp
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0x140]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rdi, qword [rsp + 0x138]
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm1
mov r8d, 0xe0
lea rcx, [rsp + 0x940]
mov rdx, rbp
call sub.ntdll.dll_memcpy
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0x490], xmm1
movaps xmmword [rsp + 0x480], xmm0
mov r8d, 0xa
mov rcx, rsi
lea rdx, str.keep_aliveHTTP_1.1_100_Continue_r_n_r_n0_r_n_r_nHTTP_2_connection_in_progress
call fcn.00497538
cmp qword [rsp + 0x330], 0
jne 0x54d003
lea rdi, [rsp + 0x338]
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0x6f0], xmm1
movaps xmmword [rsp + 0x6e0], xmm0
mov r8d, 0x10
mov rcx, rsi
lea rdx, [0x00702a6f]
call fcn.00497538
cmp qword [rsp + 0x330], 0
jne 0x54d003
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
lea rax, [rsp + 0x1b0]
movups xmmword [rax + 0x30], xmm1
movups xmmword [rax + 0x20], xmm0
movaps xmm0, xmmword [rsp + 0x6e0]
movaps xmm1, xmmword [rsp + 0x6f0]
movaps xmmword [rsp + 0x1b0], xmm0
movaps xmmword [rsp + 0x1c0], xmm1
movups xmm0, xmmword [0x00702a90]
movups xmmword [rax + 0x50], xmm0
movups xmm0, xmmword [0x00702a80]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [0x00702a58]
movups xmmword [rax + 0x70], xmm0
movups xmm0, xmmword [0x00702a48]
movups xmmword [rax + 0x60], xmm0
movups xmm0, xmmword [0x00702ab0]
movups xmmword [rax + 0x90], xmm0
movups xmm0, xmmword [0x00702aa0]
movups xmmword [rax + 0x80], xmm0
xor esi, esi
lea rcx, [rsp + 0x940]
cmp rsi, 0xa0
je 0x54a854
lea r8, [rsp + rsi]
add r8, 0x1b0
lea rdi, [rsp + 0x330]
mov rcx, rdi
lea rdx, [rsp + 0x940]
call fcn.0049a616
mov rcx, rdi
call fcn.0049e108
lea rcx, [rsp + 0x940]
add rsi, 0x20
jmp 0x54a7f3
lea rcx, [rsp + 0x110]
call fcn.0053a45a
lea rcx, [rsp + 0xa20]
call fcn.00537d15
jmp 0x54a511
movups xmm7, xmmword [0x00702ad0]
movaps xmmword [rsp + 0x340], xmm7
movups xmm8, xmmword [0x00702ac0]
movaps xmmword [rsp + 0x330], xmm8
lea rsi, [rsp + 0x330]
mov rdi, rcx
mov rdx, rsi
call fcn.0048b55a
test rax, rax
je 0x54a8d6
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0x10]
mov r9d, 8
lea r8, str.trailers
call fcn.0046f872
test al, al
jne 0x54a8d6
movaps xmmword [rsp + 0x6f0], xmm7
movaps xmmword [rsp + 0x6e0], xmm8
mov rcx, rsi
mov rdx, rdi
lea r8, [rsp + 0x6e0]
call fcn.0049a21c
mov rcx, rsi
call fcn.0049e108
movups xmm0, xmmword [0x0076ff30]
movaps xmmword [rsp + 0x340], xmm0
movups xmm0, xmmword [0x0076ff20]
movaps xmmword [rsp + 0x330], xmm0
lea rcx, [rsp + 0x500]
mov rdx, rdi
mov r8, rsi
call fcn.0049a21c
cmp byte [rsp + 0x520], 2
mov rdi, qword [rsp + 0x80]
je 0x54aa14
movups xmm0, xmmword [rsp + 0x500]
movups xmm1, xmmword [rsp + 0x510]
movaps xmmword [rsp + 0x600], xmm0
movaps xmmword [rsp + 0x610], xmm1
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x620], rax
mov rcx, qword [rsp + 0x608]
mov rdx, qword [rsp + 0x610]
call fcn.0049768c
test rax, rax
je 0x54d003
and qword [rsp + 0x330], 0
mov qword [rsp + 0x338], rdx
mov qword [rsp + 0x340], rax
mov qword [rsp + 0x348], rdx
and qword [rsp + 0x350], 0
mov qword [rsp + 0x358], rdx
mov qword [rsp + 0x360], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0x368], rax
mov word [rsp + 0x370], 1
lea rcx, [rsp + 0x330]
call fcn.0049ddad
test rax, rax
je 0x54aa07
mov rcx, rax
call fcn.0049d5b2
mov r9, rdx
lea rsi, [rsp + 0x6e0]
mov rcx, rsi
lea rdx, [rsp + 0x940]
mov r8, rax
call fcn.0049a55e
mov rcx, rsi
call fcn.0049e108
jmp 0x54a9c5
lea rcx, [rsp + 0x600]
call fcn.0049d49b
xor esi, esi
cmp rsi, 0xa0
je 0x54aa35
lea rcx, [rsp + rsi]
add rcx, 0x1b0
call fcn.0049e113
add rsi, 0x20
jmp 0x54aa16
lea rcx, [rsp + 0x1b0]
lea rdx, [rsp + 0x480]
call fcn.00548306
cmp qword [rsp + 0x1b0], 0
mov rsi, r12
je 0x54aaa0
mov rdx, qword [rsp + 0x1c0]
cmp rdx, qword [rsp + 0x1b8]
jne 0x54aaa0
test rdx, rdx
je 0x54aa7e
lea rcx, [rsp + 0x940]
call fcn.0049e08e
jmp 0x54aaa0
movzx eax, byte [rsp + 0x9f8]
cmp rax, 7
ja 0x54b628
mov ecx, 0xb2
bt rcx, rax
mov edx, 0
jae 0x54aa6f
mov rcx, qword [rsp + 0x130]
lea rdx, [0x007706a8]
call fcn.00540564
cmp qword [rsp + 0x480], 0
je 0x54aacf
cmp qword [rsp + 0x490], 0
sete byte [rsp + 0x3d]
jmp 0x54aaea
mov rcx, qword [rsp + 0x488]
mov ebp, eax
mov rax, qword [rsp + 0x490]
call qword [rax + 0x28]
mov byte [rsp + 0x3d], al
mov eax, ebp
mov byte [rsp + 0x3f], al
test al, al
je 0x54ab8f
lea rcx, [rsp + 0x940]
call fcn.0049df3f
test rax, rax
je 0x54ab8f
test rdx, rdx
je 0x54ab8f
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x340], rax
movaps xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x330], xmm0
mov byte [rsp + 0x1b0], 2
mov dword [rsp + 0x1b4], 2
lea r12, [rsp + 0x1b0]
mov rcx, r12
call fcn.0049ae05
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], 3
lea rcx, [rsp + 0x330]
mov rdx, r12
call fcn.0053a5a8
lea rcx, [rsp + 0x940]
call fcn.00537d36
mov bpl, byte [rsp + 0x40]
jmp 0x54b5d6
mov rcx, qword [rsp + 0xa10]
test rcx, rcx
je 0x54ac88
movabs rax, 0xf32051404c91a6de
mov qword [rsp + 0x1b8], rax
movabs rax, 0x551ab9faae98c933
mov qword [rsp + 0x1b0], rax
lea rdx, [rsp + 0x1b0]
call fcn.0055c417
test rax, rax
je 0x54ac88
mov rsi, rax
mov rdi, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0xf32051404c91a6de
xor rdx, rcx
movabs rcx, 0x551ab9faae98c933
xor rax, rcx
or rax, rdx
jne 0x54ac7d
mov rdi, qword [rsi]
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0x6f0], rax
movups xmm0, xmmword [rsi + 8]
movaps xmmword [rsp + 0x6e0], xmm0
mov edx, 8
mov rcx, rsi
call fcn.00414d20
test rdi, rdi
je 0x54ac88
mov qword [rsp + 0x1b0], rdi
mov rax, qword [rsp + 0x6f0]
lea r8, [rsp + 0x1b0]
mov qword [r8 + 0x18], rax
movaps xmm0, xmmword [rsp + 0x6e0]
movups xmmword [r8 + 8], xmm0
lea rsi, [rsp + 0x330]
mov rcx, rsi
lea rdx, [rsp + 0xa10]
call fcn.00487cd2
mov rcx, rsi
call fcn.00538cb5
jmp 0x54ac88
mov rcx, rsi
mov rdx, rdi
call fcn.00579d35
mov r8d, 0xe0
lea rcx, [rsp + 0x600]
lea rdx, [rsp + 0x940]
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
test rcx, rcx
mov qword [rsp + 0x48], rcx
cmove rax, rcx
mov qword [rsp + 0xa0], rax
mov rcx, qword [rsp + 0x6d0]
test rcx, rcx
je 0x54ad85
movabs rax, 0xf265a0d994420f61
mov qword [rsp + 0x1b8], rax
movabs rax, 0x4f87a620757f64dc
mov qword [rsp + 0x1b0], rax
lea rdx, [rsp + 0x1b0]
call fcn.0055c417
test rax, rax
je 0x54ad85
mov rsi, rax
mov rdi, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0xf265a0d994420f61
xor rdx, rcx
movabs rcx, 0x4f87a620757f64dc
xor rax, rcx
or rax, rdx
jne 0x54ad7a
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rsp + 0x1c0], xmm1
movaps xmmword [rsp + 0x1b0], xmm0
mov edx, 8
mov rcx, rsi
call fcn.00414d20
movaps xmm0, xmmword [rsp + 0x1b0]
movaps xmm1, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x4f0], xmm1
movaps xmmword [rsp + 0x4e0], xmm0
jmp 0x54ad8e
mov rcx, rsi
mov rdx, rdi
call fcn.00579d35
and qword [rsp + 0x4e0], 0
lea rdi, [rsp + 0x1b0]
mov rsi, qword [rsp + 0x6d0]
test rsi, rsi
je 0x54adba
cmp qword [rsi + 0x18], 0
je 0x54adba
mov rcx, rsi
call fcn.00493e57
mov rcx, rsi
call fcn.0055bc14
mov rax, qword [rsp + 0xb0]
mov rax, qword [rax]
mov qword [rsp + 0x98], rax
lea rdx, [rax + 0x10]
mov rcx, rdi
call fcn.0056c700
cmp qword [rsp + 0x1b0], 0
jne 0x54d003
mov rbp, qword [rsp + 0x1b8]
mov rax, qword [rbx + 0xa0]
mov qword [rsp + 0x4d8], rax
lea rdx, [rax + 0x10]
mov rcx, rdi
call fcn.0056c700
cmp qword [rsp + 0x1b0], 0
jne 0x54d003
mov rsi, r12
lea rdx, [rbp + 0x10]
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0xd8], rax
mov rcx, rdi
call fcn.004934e3
mov rcx, rdi
mov dil, byte [rsp + 0x1b0]
cmp dil, 3
mov qword [rsp + 0x58], rbp
jne 0x54aeba
mov rax, qword [rbp + 0xb0]
test al, 1
jne 0x54af29
mov rdx, rbp
cmp qword [rsp + 0x48], 0
je 0x54af39
lea rax, [rdx + 0x1a8]
mov rcx, qword [rsp + 0xa0]
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x1b8], rcx
mov qword [rsp + 0x1b0], rax
lea rcx, [rsp + 0x1b0]
call fcn.0048894e
mov rdx, qword [rsp + 0x58]
cmp byte [rax + 0x124], 0
mov dil, 3
je 0x54af39
mov bpl, 3
jmp 0x54b13b
mov bpl, byte [rsp + 0x1b1]
mov eax, dword [rcx + 2]
mov dword [rsp + 0x88], eax
movzx eax, word [rcx + 6]
mov word [rsp + 0x8c], ax
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x1c4]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0xe0], rax
mov al, byte [rsp + 0x1d0]
mov byte [rsp + 0x3c], al
mov eax, dword [rcx + 0x21]
mov ecx, dword [rcx + 0x24]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x6b], ecx
jmp 0x54b13b
shr eax, 8
or al, 5
mov dil, 3
mov rbp, rax
jmp 0x54b13b
mov bpl, 1
mov dil, 3
cmp byte [rdx + 0x1a0], 0
jne 0x54b13b
lea rax, [rdx + 0xb0]
mov rbp, qword [rax]
test bpl, 1
jne 0x54b134
mov qword [rsp + 0x4d0], rax
shr rbp, 0x20
lea eax, [rbp + 2]
mov ecx, eax
shr ecx, 0x1f
mov dword [rdx + 0xb0], ecx
mov dword [rdx + 0xb4], eax
mov r9d, dword [rdx + 0x9c]
mov r8d, dword [rdx + 0x11c]
lea rcx, [rsp + 0x330]
mov edx, ebp
call fcn.00493019
mov rcx, qword [rsp + 0x128]
lea rdx, [0x0076f8c0]
call fcn.00540564
test al, al
je 0x54afc1
mov qword [rsp + 0x360], 1
mov r8d, 0xe0
lea rcx, [rsp + 0x1b0]
lea rdx, [rsp + 0x600]
call sub.ntdll.dll_memcpy
movaps xmm0, xmmword [rsp + 0x4e0]
movaps xmm1, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0x810], xmm1
movaps xmmword [rsp + 0x800], xmm0
mov al, byte [rsp + 0x268]
mov byte [rsp + 0x48], al
mov ecx, 0xb
lea rdi, [rsp + 0xd08]
lea rsi, [rsp + 0x210]
rep movsq qword [rdi], qword [rsi]
mov sil, byte [rsp + 0x288]
mov rcx, qword [rsp + 0x280]
call fcn.00537bad
lea rcx, [rsp + 0xbc0]
lea rdx, [rsp + 0xd08]
call fcn.00498ad5
mov rax, qword [rsp + 0xbf0]
test rax, rax
je 0x54b62f
mov qword [rsp + 0x500], rax
lea rax, [rsp + 0xbf8]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x508]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rax, qword [rsp + 0x510]
cmp rax, 1
mov r8, rax
adc r8, 0
lea rdx, str._No_file_has_been_startedZipWriter_was_already_closedLarge_file_option_has_not_been_setZipWriter_drop_failed:
test rax, rax
je 0x54b0a7
mov rdx, qword [rsp + 0x508]
lea rcx, [rsp + 0x460]
call fcn.0046f4f2
lea rcx, [rsp + 0x500]
call fcn.00487df7
cmp qword [rsp + 0x460], 0
lea rax, [0x006ef858]
mov qword [rsp + 0x500], rax
lea rax, [0x00799ab8]
mov qword [rsp + 0x508], rax
lea rax, [rsp + 0x508]
movups xmmword [rax + 8], xmm6
lea rdi, [rsp + 0x1b0]
je 0x54b661
movups xmm0, xmmword [rsp + 0x460]
movups xmm1, xmmword [rsp + 0x470]
movaps xmmword [rsp + 0x160], xmm1
movaps xmmword [rsp + 0x150], xmm0
lea rcx, [rsp + 0x500]
call fcn.00487df7
jmp 0x54b691
shr ebp, 8
or bpl, 5
mov rcx, qword [rsp + 0xd8]
call sub.kernel32.dll_ReleaseSRWLockExclusive
mov rcx, qword [rsp + 0x58]
call sub.kernel32.dll_ReleaseSRWLockExclusive
lea rcx, [rsp + 0x4e0]
call fcn.00538cb5
lea rcx, [rsp + 0x600]
call fcn.00537d36
mov r8d, ebp
mov bpl, byte [rsp + 0x40]
mov r9, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x78]
mov byte [rsp + 0x1b0], dil
mov byte [rsp + 0x1b1], r8b
movzx eax, word [rsp + 0x8c]
lea r12, [rsp + 0x1b0]
mov word [r12 + 6], ax
mov eax, dword [rsp + 0x88]
mov dword [r12 + 2], eax
mov qword [rsp + 0x1b8], rdx
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x1c0], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x1c4], eax
mov qword [rsp + 0x1c8], r9
mov al, byte [rsp + 0x3c]
mov byte [rsp + 0x1d0], al
mov eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x6b]
mov dword [r12 + 0x24], ecx
mov dword [r12 + 0x21], eax
cmp dil, 3
mov qword [rsp + 0xe0], r9
mov qword [rsp + 0x78], rdx
mov byte [rsp + 0x3e], r8b
jne 0x54b22b
mov byte [rsp + 0xe8], 3
mov byte [rsp + 0xe9], r8b
mov rdi, qword [rsp + 0x80]
jmp 0x54b517
lea rcx, [rsp + 0xe8]
mov rdx, r12
call fcn.0048cbd5
cmp byte [rsp + 0xe8], 5
mov rdi, qword [rsp + 0x80]
jne 0x54b517
mov dword [rsp + 0x58], r14d
mov dword [rsp + 0x48], r15d
mov r15, rsi
mov byte [rsp + 0x40], bpl
mov r12b, byte [rsp + 0x108]
lea rcx, [rsp + 0x330]
mov rdx, qword [rsp + 0xf0]
mov ebp, dword [rsp + 0xf8]
mov edi, dword [rsp + 0xfc]
add rdx, 0x10
mov rsi, rcx
call fcn.0056c700
cmp qword [rsp + 0x330], 0
jne 0x54d003
mov r14, qword [rsp + 0x338]
lea rax, [r14 + 0x1a8]
mov dword [rsp + 0x338], ebp
mov dword [rsp + 0x33c], edi
mov qword [rsp + 0x330], rax
mov rcx, rsi
call fcn.0048894e
mov dil, byte [rax + 0x124]
mov rcx, r14
call sub.kernel32.dll_ReleaseSRWLockExclusive
test r12b, r12b
je 0x54b31a
test dil, dil
je 0x54b31a
lea rcx, [rsp + 0x330]
lea rdx, [rsp + 0xf0]
call fcn.00493147
mov rsi, qword [rsp + 0xa8]
mov rcx, rsi
call fcn.00552532
movups xmm0, xmmword [rsp + 0x330]
movups xmmword [rsi], xmm0
lea rbp, [rsp + 0x1b0]
mov rcx, rbp
lea rsi, [rsp + 0xf0]
mov rdx, rsi
call fcn.00493147
mov rax, qword [rsi + 0x10]
mov qword [rbp + 0x28], rax
movups xmm0, xmmword [rsi]
movups xmmword [rbp + 0x18], xmm0
mov byte [rsp + 0x1c0], 0
movups xmm0, xmmword [rsp + 0x1b0]
movups xmm1, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x170], xmm0
mov al, byte [rsp + 0x1c0]
mov byte [rsp + 0x180], al
mov rax, qword [rsp + 0x1c1]
mov qword [rsp + 0x181], rax
mov eax, dword [rsp + 0x1c9]
mov dword [rsp + 0x189], eax
movzx eax, word [rsp + 0x1cd]
mov word [rsp + 0x18d], ax
mov al, byte [rsp + 0x1cf]
mov byte [rsp + 0x18f], al
movaps xmmword [rsp + 0x190], xmm1
mov rax, qword [rsp + 0x180]
lea rcx, [rsp + 0x348]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x170]
movups xmmword [rcx], xmm0
lea rdx, [rsp + 0x188]
mov rax, qword [rdx + 0x10]
lea rcx, [rsp + 0x360]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movaps xmm0, xmmword [rsp + 0x480]
movaps xmm1, xmmword [rsp + 0x490]
lea rax, [rsp + 0x378]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
movaps xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x330], xmm0
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x340], rax
mov al, byte [rsp + 0x3f]
mov byte [rsp + 0x398], al
mov al, byte [rsp + 0x3d]
mov byte [rsp + 0x399], al
mov r12, qword [rsp + 0x60]
mov r8, qword [r12]
lea rcx, [rsp + 0x6e0]
mov rdx, qword [rsp + 0xb0]
call fcn.005523b8
movzx eax, byte [rsp + 0x6e0]
cmp eax, 5
je 0x54b5e8
cmp eax, 6
je 0x54cfae
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x610], rax
movaps xmm0, xmmword [rsp + 0x330]
movaps xmmword [rsp + 0x600], xmm0
lea rcx, [rsp + 0x6e0]
call fcn.0049ae05
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], 3
lea rcx, [rsp + 0x600]
mov rdx, rbp
call fcn.0053a5a8
lea rcx, [rsp + 0x348]
call case.0x500f25.332
lea rcx, [rsp + 0x360]
call fcn.005205bd
lea rcx, [rsp + 0x378]
call fcn.00537d6c
mov bpl, byte [rsp + 0x40]
mov rsi, r15
mov r15d, dword [rsp + 0x48]
mov rdi, qword [rsp + 0x80]
mov r14d, dword [rsp + 0x58]
jmp 0x54a511
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x190], rax
mov al, byte [rsp + 0xe8]
mov cl, byte [rsp + 0xe9]
mov rdx, qword [rsp + 0xea]
mov r8d, dword [rsp + 0xf2]
movzx r9d, word [rsp + 0xf6]
movups xmm0, xmmword [rsp + 0xf8]
movaps xmmword [rsp + 0x180], xmm0
mov byte [rsp + 0x170], al
mov byte [rsp + 0x171], cl
mov qword [rsp + 0x172], rdx
mov dword [rsp + 0x17a], r8d
mov word [rsp + 0x17e], r9w
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x340], rax
movaps xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x330], xmm0
lea rcx, [rsp + 0x170]
call fcn.0049ae05
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], 3
lea rcx, [rsp + 0x330]
mov rdx, r12
call fcn.0053a5a8
lea rcx, [rsp + 0x480]
call fcn.00537d6c
jmp 0x54a511
mov ecx, 0xe
mov rdi, rbp
lea rsi, [rsp + 0x330]
rep movsq qword [rdi], qword [rsi]
mov rdi, qword [rsp + 0x80]
mov rcx, rdi
mov rdx, rbp
mov r8, r12
call fcn.00542c37
mov bpl, byte [rsp + 0x40]
mov rsi, r15
mov r15d, dword [rsp + 0x48]
mov r14d, dword [rsp + 0x58]
jmp 0x54a511
xor edx, edx
jmp 0x54aa6f
lea rax, [0x006ef858]
mov qword [rsp + 0x500], rax
lea rax, [0x00799ab8]
mov qword [rsp + 0x508], rax
lea rax, [rsp + 0x508]
movups xmmword [rax + 8], xmm6
lea rdi, [rsp + 0x1b0]
mov rax, qword [rsp + 0x500]
mov rcx, qword [rsp + 0x508]
movups xmm0, xmmword [rsp + 0x510]
movaps xmmword [rsp + 0x160], xmm0
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rcx
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0xb20]
mov r10b, byte [rsp + 0x48]
movzx eax, r10b
test eax, eax
je 0x54b6c2
cmp eax, 7
je 0x54b6c2
cmp qword [rsp + 0x160], 0
je 0x54be37
mov rax, qword [rsp + 0x150]
test rax, rax
je 0x54b72c
mov qword [rsp + 0x460], rax
mov r9, qword [rdx + 0x10]
lea r8, [rsp + 0x468]
mov qword [r8 + 0x10], r9
movups xmm0, xmmword [rdx]
movups xmmword [r8], xmm0
cmp qword [rsp + 0x470], 0
je 0x54b712
mov r8, qword [rdx + 0x10]
mov qword [rsp + 0x4b0], r8
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x4a0], xmm0
jmp 0x54b72e
lea rcx, [rsp + 0x460]
call fcn.00487df7
mov r10b, byte [rsp + 0x48]
lea rcx, [rsp + 0xb20]
xor eax, eax
mov byte [rsp + 0x500], r10b
mov r8, qword [rdi + 0xc8]
lea rdx, [rsp + 0x508]
mov qword [rdx + 8], r8
movups xmm0, xmmword [rdi + 0xb9]
movups xmmword [rdx - 7], xmm0
and qword [rsp + 0x518], 0
and qword [rsp + 0x538], 0
mov qword [rsp + 0x558], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rdx + 0x68], rax
movaps xmm0, xmmword [rsp + 0x4a0]
movups xmmword [rdx + 0x58], xmm0
movaps xmm0, xmmword [rsp + 0x800]
movaps xmm1, xmmword [rsp + 0x810]
movups xmmword [rdx + 0x80], xmm1
movups xmmword [rdx + 0x70], xmm0
and word [rsp + 0x598], 0
cmp byte [rsp + 0xbc0], 3
je 0x54b7d1
lea rcx, [rsp + 0x500]
lea rdx, [rsp + 0xbc0]
call fcn.0048ee7f
lea rcx, [rsp + 0xb20]
cmp qword [rsp + 0xbd0], 0
je 0x54b855
lea rax, [rsp + 0xbf8]
movups xmm0, xmmword [rax - 0x28]
movups xmm1, xmmword [rax - 0x18]
movaps xmmword [rsp + 0x4b0], xmm1
movaps xmmword [rsp + 0x4a0], xmm0
mov rdx, qword [rsp + 0x4a8]
mov r8, qword [rsp + 0x4b0]
lea rcx, [rsp + 0x460]
call fcn.0046f4f2
lea rdi, [rsp + 0x538]
mov rcx, rdi
call fcn.00538cb5
movups xmm0, xmmword [rsp + 0x460]
movups xmm1, xmmword [rsp + 0x470]
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi], xmm0
lea rcx, [rsp + 0x4a0]
call fcn.00487df7
lea rcx, [rsp + 0xb20]
mov r8d, 0xa0
lea rdx, [rsp + 0x500]
mov rdi, rcx
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0xb38]
or rax, qword [rsp + 0xb58]
jne 0x54b8c7
cmp sil, 3
jne 0x54b8b0
lea rcx, [rsp + 0xb20]
call fcn.004890be
lea rcx, [rsp + 0x1b0]
call fcn.0051fd33
mov byte [rsp + 0x98], 7
mov dil, 3
mov rsi, r12
jmp 0x54b9fd
lea rdi, [rsp + 0xb20]
mov rcx, rdi
lea rdx, [0x00770e48]
call fcn.0048ee7f
mov qword [rsp + 0x4c8], rbp
mov r8d, 0xa0
lea rcx, [rsp + 0x530]
mov rdx, rdi
call sub.ntdll.dll_memcpy
mov r13, qword [rsp + 0x1b0]
mov dil, byte [rsp + 0x1b8]
mov r15b, byte [rsp + 0x1b9]
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x48], eax
mov r14d, dword [rsp + 0x1cc]
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x1a8], rax
mov al, byte [rsp + 0x1d8]
mov byte [rsp + 0x40], al
lea r12, [rsp + 0x1b0]
movups xmm0, xmmword [r12 + 0x30]
movups xmm1, xmmword [r12 + 0x40]
movups xmm2, xmmword [r12 + 0x50]
movaps xmmword [rsp + 0x500], xmm0
movaps xmmword [rsp + 0x510], xmm1
movaps xmmword [rsp + 0x520], xmm2
mov r8d, 0xd0
lea rsi, [rsp + 0xbc0]
mov rcx, rsi
lea rdx, [rsp + 0x500]
call sub.ntdll.dll_memcpy
mov eax, dword [r12 + 0xa]
mov dword [rsp + 0x90], eax
movzx eax, word [r12 + 0xe]
mov word [rsp + 0x94], ax
mov eax, dword [r12 + 0x29]
mov ecx, dword [r12 + 0x2c]
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0xbb], ecx
mov r8d, 0xd0
lea rbp, [rsp + 0xf40]
mov rcx, rbp
mov rdx, rsi
call sub.ntdll.dll_memcpy
cmp r13, 3
jne 0x54baba
mov byte [rsp + 0x98], r15b
mov r15d, dword [rsp + 0x48]
mov r13, qword [rsp + 0x1a8]
mov rsi, qword [rsp + 0xa0]
movzx eax, word [rsp + 0x94]
mov ecx, dword [rsp + 0x90]
mov edx, dword [rsp + 0xb8]
mov r8d, dword [rsp + 0xbb]
mov dword [rsp + 0x70], edx
mov dword [rsp + 0x73], r8d
mov dword [rsp + 0x88], ecx
mov word [rsp + 0x8c], ax
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [rsp + 0x6b], ecx
mov dword [rsp + 0x68], eax
mov al, byte [rsp + 0x380]
lea ecx, [rax - 6]
cmp cl, 6
mov bpl, byte [rsp + 0x40]
jb 0x54ba6e
add al, 0xfd
cmp al, 2
ja 0x54ba61
cmp al, 1
jne 0x54ba6e
lea rcx, [rsp + 0x380]
call fcn.0053ffa0
mov rax, qword [rsp + 0x3c0]
test rax, rax
je 0x54ba86
mov rcx, qword [rsp + 0x3c8]
call qword [rax + 0x18]
mov rax, qword [rsp + 0x3d8]
test rax, rax
je 0x54ba9e
mov rcx, qword [rsp + 0x3e0]
call qword [rax + 0x18]
mov r12, r13
mov byte [rsp + 0x3c], bpl
mov qword [rsp + 0x78], rsi
mov dword [rsp + 0x54], r15d
mov dword [rsp + 0x50], r14d
jmp 0x54bd8b
mov rdx, rbp
mov bpl, byte [rsp + 0x3f]
xor bpl, 1
and bpl, byte [rsp + 0x3d]
mov rax, qword [rsp + 0xd8]
add rax, 0x10
mov qword [rsp + 0x4c0], rax
or bpl, 4
movzx eax, word [rsp + 0x94]
mov word [rsp + 0xd0], ax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0xcc], eax
mov eax, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbb]
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x73], ecx
mov r8d, 0xd0
lea rcx, [rsp + 0x710]
call sub.ntdll.dll_memcpy
mov byte [rsp + 0x7e0], 0
mov eax, dword [rsp + 0x5fc]
lea rdx, [rsp + 0x6e1]
mov dword [rdx + 0x108], eax
mov rax, qword [rsp + 0x5f4]
mov qword [rdx + 0x100], rax
mov byte [rsp + 0x7ed], 2
mov rax, qword [rsp + 0x4c8]
mov dword [rsp + 0x7f0], eax
mov byte [rsp + 0x7f4], bpl
lea rbp, [rsp + 0x1b0]
mov al, byte [rsp + 0xd7]
mov byte [rdx + 0x116], al
movzx eax, word [rsp + 0xd5]
mov word [rdx + 0x114], ax
mov qword [rsp + 0x6e0], r13
mov byte [rsp + 0x6e8], dil
mov byte [rsp + 0x6e9], r15b
movzx eax, word [rsp + 0xd0]
mov word [rdx + 0xd], ax
mov eax, dword [rsp + 0xcc]
mov dword [rdx + 9], eax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x6f0], rax
mov r15d, dword [rsp + 0x48]
mov dword [rsp + 0x6f8], r15d
mov dword [rsp + 0x6fc], r14d
mov r13, qword [rsp + 0x1a8]
mov qword [rsp + 0x700], r13
mov al, byte [rsp + 0x40]
mov byte [rsp + 0x708], al
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [rdx + 0x2b], ecx
mov dword [rdx + 0x28], eax
mov r12, qword [rsp + 0x58]
lea rsi, [r12 + 0x1a8]
mov edi, dword [rsp + 0x444]
mov r8d, 0x130
mov rcx, rbp
lea rdx, [rsp + 0x330]
call sub.ntdll.dll_memcpy
lea rcx, [rsp + 0x500]
mov rdx, rsi
mov r8d, edi
mov r9, rbp
mov rbp, rcx
call fcn.0048a0d6
lea rax, [r12 + 0x150]
mov cl, byte [r12 + 0x1a0]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], cl
mov rcx, qword [rsp + 0x4d0]
lea rdx, [rsp + 0x6e0]
mov r8, qword [rsp + 0x4c0]
mov r9, rbp
call fcn.0053fb52
cmp al, 0xc
jne 0x54bd50
inc qword [r12 + 0x218]
mov rsi, qword [r12 + 0x160]
mov rdi, qword [r12 + 0x168]
mov rax, qword [rsp + 0x98]
lock inc qword [rax]
jle 0x54d003
mov rcx, rbp
call fcn.0048897d
mov rcx, qword [rax + 0x78]
cmp rcx, 0xffffffffffffffff
je 0x54d003
inc rcx
mov qword [rax + 0x78], rcx
mov eax, dword [rsp + 0x508]
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x50c]
mov dword [rsp + 0x50], eax
mov r12, qword [rsp + 0x4d8]
lock inc qword [r12]
mov bpl, byte [rsp + 0x40]
jle 0x54d003
inc rdi
cmp rsi, rdi
setbe byte [rsp + 0x3c]
mov rcx, qword [rsp + 0xd8]
call sub.kernel32.dll_ReleaseSRWLockExclusive
mov rcx, qword [rsp + 0x58]
call sub.kernel32.dll_ReleaseSRWLockExclusive
mov rax, qword [rsp + 0x98]
mov rdx, rax
mov r9, r12
mov rsi, qword [rsp + 0xa0]
mov r8b, byte [rsp + 0x3e]
mov rcx, r12
jmp 0x54bdc2
mov byte [rsp + 0x98], al
mov rcx, qword [rsp + 0x500]
mov edx, dword [rsp + 0x50c]
call fcn.00488c47
mov rcx, rbp
call fcn.00488e3b
mov dil, 3
mov bpl, byte [rsp + 0x40]
mov rsi, qword [rsp + 0xa0]
mov r12, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd8]
call sub.kernel32.dll_ReleaseSRWLockExclusive
mov rcx, qword [rsp + 0x58]
call sub.kernel32.dll_ReleaseSRWLockExclusive
mov rdx, qword [rsp + 0x78]
mov rax, rdx
mov rcx, r12
mov r8b, byte [rsp + 0x98]
cmp dil, 4
mov r9, r12
jne 0x54b181
mov dword [rsp + 0x48], r15d
mov byte [rsp + 0x3e], r8b
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0xe0], r9
mov dword [rsp + 0x58], r14d
mov r15, rsi
mov byte [rsp + 0x40], bpl
mov qword [rsp + 0xf0], rax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0xf8], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0xfc], eax
mov qword [rsp + 0x100], rcx
mov r8b, byte [rsp + 0x3c]
mov byte [rsp + 0x108], r8b
mov eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x6b]
lea rdx, [rsp + 0xf0]
mov dword [rdx + 0x1c], ecx
mov dword [rdx + 0x19], eax
mov r12d, r8d
jmp 0x54b26b
lea rcx, [rsp + 0x150]
call fcn.00487df7
mov r10b, byte [rsp + 0x48]
lea rcx, [rsp + 0xb20]
lea rdx, [rsp + 0x158]
lea rax, [0x006ef858]
mov qword [rsp + 0x150], rax
lea r8, str._No_file_has_been_startedZipWriter_was_already_closedLarge_file_option_has_not_been_setZipWriter_drop_failed:
mov qword [rsp + 0x158], r8
mov qword [rsp + 0x160], 1
and qword [rsp + 0x168], 0
jmp 0x54b6cf
lea rax, [rbx + 0x178]
mov qword [rsp + 0xc0], rax
lea r12, [rsp + 0xa28]
lea r13, [rsp + 0x610]
mov eax, 0x100
lea rbp, [rbx + rax]
lea rcx, [rbx + 0x120]
mov qword [rsp + 0xb0], rcx
lea rcx, [rbx + 0xd0]
mov qword [rsp + 0x148], rcx
lea rcx, [rbx + 0x190]
mov qword [rsp + 0x140], rcx
lea r15, [rsp + 0x1b0]
add rax, r15
lea rcx, [rbx + 0x99]
mov qword [rsp + 0x130], rcx
xor ecx, ecx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x138], rax
cmp dword [rsp + 0x60], 0x10
je 0x54cb57
mov rcx, rbx
mov rdx, r14
call fcn.0052c420
test rax, rax
jne 0x54bf36
mov rdi, rdx
test rdx, rdx
jne 0x54ce73
mov rax, qword [rsp + 0x60]
inc eax
mov qword [rsp + 0x60], rax
cmp byte [rbx + 0x1d8], 0
jne 0x54ca44
mov rax, qword [rbx + 0x1d0]
cmp qword [rax], 0
je 0x54c093
cmp byte [rbx + 0x170], 0
jne 0x54bf95
cmp byte [rbx + 0x148], 0
je 0x54bf80
cmp qword [rbx + 0x138], 0xf
ja 0x54c42a
mov rcx, rbp
call fcn.00552e2d
cmp rax, qword [rbx + 0x140]
jae 0x54c42a
mov rax, qword [rbx + 0x88]
mov rsi, qword [rbx + 0x1d0]
cmp qword [rsi], 0
je 0x54c3ec
mov dl, 1
cmp rax, 3
ja 0x54c086
cmp rax, 2
je 0x54c086
lea rdi, [rsi + 8]
mov rcx, r15
mov rdx, rdi
mov r8, r14
call fcn.005383c2
cmp dword [rsp + 0x1b0], 2
je 0x54ca02
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0xa40], rax
movups xmm0, xmmword [rsp + 0x1b0]
movups xmm1, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0xa30], xmm1
movaps xmmword [rsp + 0xa20], xmm0
cmp qword [rsp + 0xa20], 0
je 0x54c44f
mov rax, qword [rsp + 0xa28]
mov rcx, qword [rsp + 0xa30]
test rax, rax
je 0x54ca0d
movups xmm0, xmmword [r12 + 0x10]
movups xmmword [r13], xmm0
mov qword [rsp + 0x600], rax
mov qword [rsp + 0x608], rcx
mov rcx, rdi
call fcn.00548332
mov rdi, qword [rsp + 0x610]
test al, al
jne 0x54c484
test rdi, rdi
jne 0x54c581
lea rcx, [rsp + 0x600]
call fcn.00487df7
xor edx, edx
mov rcx, rsi
call fcn.0052fab7
jmp 0x54bf42
cmp qword [rbx + 0x70], 4
je 0x54bf60
cmp qword [rbx + 0x88], 2
jne 0x54bf60
mov rcx, qword [rsp + 0xb0]
call fcn.00552e4c
test rax, rax
jne 0x54bf60
mov rax, qword [rsp + 0xc0]
cmp qword [rax], 2
jne 0x54bf60
mov r8, qword [r14]
mov rcx, r15
mov rdx, qword [rsp + 0x140]
call fcn.0054397e
mov rax, qword [rsp + 0x2b0]
cmp rax, 2
je 0x54ca92
cmp eax, 3
je 0x54cad1
mov r8d, 0x100
lea rsi, [rsp + 0x330]
mov rcx, rsi
mov rdx, r15
call sub.ntdll.dll_memcpy
mov r13, qword [rsp + 0x138]
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0xbd0], rax
movups xmm0, xmmword [r13]
movaps xmmword [rsp + 0xbc0], xmm0
mov rcx, r13
mov rdx, r14
call fcn.00543799
test al, al
je 0x54ca9b
mov r8d, 0xd0
lea rcx, [rsp + 0x820]
mov rdx, rsi
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0xa8], rax
mov al, byte [rsp + 0x408]
mov byte [rsp + 0x128], al
lea rcx, [rsp + 0x8d8]
mov rax, qword [rcx + 0x10]
lea rdx, [rsp + 0x998]
mov qword [rdx + 0x10], rax
movups xmm0, xmmword [rcx]
movups xmmword [rdx], xmm0
mov ecx, 0xb
lea rdx, [rsp + 0x940]
mov rdi, rdx
lea rsi, [rsp + 0x880]
rep movsq qword [rdi], qword [rsi]
mov r12, qword [rsp + 0x330]
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x80], rax
mov ecx, 0xa
lea rdi, [rsp + 0xa20]
lea rsi, [rsp + 0x340]
rep movsq qword [rdi], qword [rsi]
lea rax, [rsp + 0x350]
movups xmm0, xmmword [rax + 0xc0]
movups xmm1, xmmword [rax + 0xd0]
lea rax, [rsp + 0x507]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov ecx, 0xe
lea rdi, [rsp + 0xa70]
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov rsi, qword [rsp + 0xc0]
mov rcx, rsi
call fcn.0051fc27
mov rax, qword [r13 + 0x10]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [r13]
movups xmmword [rsi], xmm0
mov r8d, 0xc0
lea rcx, [rsp + 0x600]
lea rdx, [rsp + 0xa20]
call sub.ntdll.dll_memcpy
cmp r12, 4
je 0x54cad1
cmp r12, 3
je 0x54cab0
mov rax, qword [rsp + 0x51f]
mov qword [rsp + 0x1cf], rax
movups xmm0, xmmword [rsp + 0x500]
movups xmm1, xmmword [rsp + 0x510]
movaps xmmword [rsp + 0x1c0], xmm1
movaps xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x6e0], r12
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x6e8], rax
mov r8d, 0xc0
lea rcx, [rsp + 0x6f0]
lea rdx, [rsp + 0x600]
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x7b0], rax
mov al, byte [rsp + 0x128]
mov byte [rsp + 0x7b8], al
lea rax, [rsp + 0x1b8]
movups xmm0, xmmword [rax - 1]
movups xmm1, xmmword [rax + 0xf]
movaps xmmword [rsp + 0x340], xmm1
movaps xmmword [rsp + 0x330], xmm0
and qword [rsp + 0x1b0], 0
mov rcx, r15
call fcn.00538cb5
cmp qword [rsp + 0x330], 0
je 0x54c83d
cmp qword [rsp + 0x340], 0
lea r12, [rsp + 0xa28]
lea r13, [rsp + 0x610]
je 0x54c868
mov rcx, r15
lea rdx, [rsp + 0x330]
call fcn.00548306
cmp qword [rsp + 0x1b0], 0
sete al
mov rsi, qword [rsp + 0x1b8]
cmp qword [rsp + 0x1c0], rsi
setne cl
or cl, al
movzx eax, cl
mov qword [rsp + 0xa8], rax
movaps xmm0, xmmword [rsp + 0x330]
movaps xmm1, xmmword [rsp + 0x340]
movaps xmmword [rsp + 0x1c0], xmm1
movaps xmmword [rsp + 0x1b0], xmm0
mov rdi, qword [rbx + 0x1d0]
mov rcx, rdi
call fcn.00535926
mov r9, qword [rsp + 0xa8]
mov qword [rdi], 1
movaps xmm0, xmmword [rsp + 0x1b0]
movaps xmm1, xmmword [rsp + 0x1c0]
movups xmmword [rdi + 8], xmm0
movups xmmword [rdi + 0x18], xmm1
xor edi, edi
jmp 0x54c889
mov r12d, 1
xor r13d, r13d
cmp rax, 3
ja 0x54ca1b
cmp rax, 2
je 0x54ca1b
mov rcx, rbx
call fcn.00542b6e
xor r13d, r13d
test rax, rax
lea r12, [rsp + 0xa28]
je 0x54c9ea
jmp 0x54ca79
mov rcx, rbx
mov rdx, r14
call fcn.0052f4a1
test rax, rax
jne 0x54ca44
mov rdi, rdx
test rdx, rdx
je 0x54bf42
jmp 0x54ca7e
mov rcx, rbx
call fcn.00542b6e
mov rdi, rax
mov rax, qword [rsp + 0xa20]
mov r13b, 1
test rdi, rdi
jne 0x54ca83
test rax, rax
je 0x54c9ea
mov rcx, r12
call fcn.0052fad2
jmp 0x54c9ea
test rdi, rdi
je 0x54c5f6
movups xmm0, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x940], xmm0
mov r12, qword [rsp + 0x618]
mov rax, qword [rbx + 0x88]
lea rcx, [rax - 2]
cmp rcx, 3
ja 0x54c4c0
cmp rcx, 1
jne 0x54d003
test rax, rax
je 0x54c735
mov r13, qword [rbx + 0x90]
xor eax, eax
cmp rdi, r13
setne al
mov ecx, 0xff
cmovb eax, ecx
test al, al
je 0x54c7d5
movzx eax, al
cmp eax, 1
jne 0x54c805
movups xmm0, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x820], xmm0
mov qword [rsp + 0x830], rdi
mov qword [rsp + 0x838], r12
mov qword [rsp + 0x840], r13
cmp byte [rbx + 0x148], 0
je 0x54c945
mov rax, qword [rsp + 0x840]
lea rcx, [rsp + 0x1b8]
mov qword [rcx + 0x20], rax
movaps xmm0, xmmword [rsp + 0x820]
mov rax, qword [rsp + 0x830]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x838]
mov qword [rcx + 0x18], rax
movups xmmword [rcx], xmm0
mov qword [rsp + 0x1b0], 1
mov rcx, qword [rsp + 0xb0]
mov rdx, r15
call fcn.00552fd2
jmp 0x54c9c3
movups xmm0, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x500], xmm0
mov r13, qword [rsp + 0x618]
mov rax, qword [rbx + 0x88]
lea rcx, [rax - 2]
cmp rcx, 3
ja 0x54c5b4
cmp rcx, 1
jne 0x54d003
test rax, rax
mov rdx, qword [rsp + 0x40]
je 0x54c61f
mov rcx, qword [rbx + 0x90]
mov rax, rcx
sub rax, rdi
jae 0x54c67a
and qword [rbx + 0x90], 0
movups xmm0, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x820], xmm0
mov eax, 1
mov rdx, rcx
jmp 0x54c693
mov rcx, rbx
call fcn.00542b6e
mov rdi, rax
lea rcx, [rsp + 0x600]
call fcn.00487df7
mov r13b, 1
test rdi, rdi
je 0x54c9ea
jmp 0x54ca15
lea rcx, [rsp + 0x350]
mov rdx, rdi
call fcn.0049e163
movaps xmm0, xmmword [rsp + 0x500]
movaps xmmword [rsp + 0x330], xmm0
mov qword [rsp + 0x340], rdi
mov qword [rsp + 0x348], r13
movaps xmmword [rsp + 0x820], xmm0
mov rdx, qword [rsp + 0x350]
lea rax, [rsp + 0x350]
movups xmm0, xmmword [rax + 8]
movaps xmmword [rsp + 0x940], xmm0
mov eax, 2
jmp 0x54c693
mov qword [rbx + 0x90], rax
movups xmm0, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x820], xmm0
xor eax, eax
movaps xmm0, xmmword [rsp + 0x820]
lea rcx, [rsp + 0x1b8]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x1c8], rdi
mov qword [rsp + 0x1d0], r13
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x1d8], rdx
movaps xmm0, xmmword [rsp + 0x940]
movups xmmword [rcx + 0x28], xmm0
mov qword [rsp + 0x1b0], rax
lea rax, [0x00770c07]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], 2
mov rcx, qword [rsp + 0x148]
mov rdx, r15
call case.0x54efff.31
cmp qword [rbx + 0x88], 0
je 0x54c72d
cmp qword [rbx + 0x90], 0
jne 0x54c72d
cmp byte [rbx + 0x98], 1
mov eax, 5
sbb rax, 0
mov qword [rbx + 0x88], rax
xor r13d, r13d
jmp 0x54c9ea
lea rcx, [rsp + 0x1d0]
mov rdx, rdi
call fcn.0049e163
movaps xmm0, xmmword [rsp + 0x940]
mov qword [rsp + 0x1c0], rdi
mov qword [rsp + 0x1c8], r12
movaps xmmword [rsp + 0x330], xmm0
movaps xmm0, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x350], xmm0
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x360], rax
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x348], rax
lea rax, str._r_n0_r_n_r_n_r_n
mov qword [rsp + 0x368], rax
mov qword [rsp + 0x370], 7
mov rcx, rbp
lea rdx, [rsp + 0x330]
call fcn.00553051
jmp 0x54c9c3
movups xmm0, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x1c0], rdi
mov qword [rsp + 0x1c8], r12
mov rcx, rbp
mov rdx, r15
call fcn.00552f50
jmp 0x54c9c3
movups xmm0, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x1c0], rdi
mov qword [rsp + 0x1c8], r12
mov rcx, rbp
mov rdx, r15
call fcn.00552f50
lea r12, [rsp + 0xa28]
jmp 0x54c9d4
mov rcx, qword [rsp + 0x338]
mov rax, qword [rsp + 0x340]
call qword [rax + 0x28]
test al, al
lea r12, [rsp + 0xa28]
lea r13, [rsp + 0x610]
je 0x54c353
mov rsi, qword [rbx + 0x1d0]
mov rcx, rsi
call fcn.00535926
and qword [rsi], 0
mov r9d, 2
mov dil, 1
mov rsi, qword [rsp + 0x78]
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x20], rsi
mov rcx, r15
mov rdx, rbx
lea r8, [rsp + 0x6e0]
call fcn.00540f5c
mov rax, qword [rsp + 0x1b0]
cmp rax, 2
je 0x54c92a
mov rcx, qword [rsp + 0x1b8]
mov dl, byte [rsp + 0x1c0]
test rax, rax
je 0x54c8db
test rcx, rcx
jne 0x54c8db
cmp dl, 1
mov eax, 5
sbb rax, 0
jmp 0x54c8fb
lea r9, [rsp + 0x1b8]
mov r8d, dword [r9 + 9]
mov r9d, dword [r9 + 0xc]
mov dword [rsp + 0x823], r9d
mov dword [rsp + 0x820], r8d
mov qword [rbx + 0x88], rax
mov qword [rbx + 0x90], rcx
mov byte [rbx + 0x98], dl
mov eax, dword [rsp + 0x820]
mov ecx, dword [rsp + 0x823]
mov rdx, qword [rsp + 0x130]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
test dil, dil
je 0x54bf42
lea rcx, [rsp + 0x330]
call fcn.0051fc67
jmp 0x54bf42
cmp rdi, r13
mov rdx, r13
cmovb rdx, rdi
mov rcx, rbp
call fcn.0049ce1c
cmp rdi, r13
mov r12, r13
cmovb r12, rdi
test r12, r12
je 0x54c9b6
mov rdx, qword [rsp + 0x828]
lea r8, [rdx + r12]
mov rcx, rbp
call fcn.00433e6a
mov r13, qword [rsp + 0x840]
sub r13, r12
jb 0x54d003
mov rdi, qword [rsp + 0x830]
sub rdi, r12
jb 0x54d003
mov qword [rsp + 0x830], rdi
add qword [rsp + 0x828], r12
mov qword [rsp + 0x840], r13
jmp 0x54c957
lea rcx, [rsp + 0x820]
call fcn.00487df7
cmp byte [rbx + 0x98], 0
lea r12, [rsp + 0xa28]
je 0x54c9db
mov eax, 5
jmp 0x54c9e0
mov eax, 4
mov qword [rbx + 0x88], rax
mov r13b, 1
mov rcx, rsi
mov edx, r13d
call fcn.0052fab7
lea r13, [rsp + 0x610]
jmp 0x54bf42
mov r12d, 1
xor r13d, r13d
jmp 0x54ca1b
call fcn.0053881b
mov rdi, rax
mov r13b, 1
xor r12d, r12d
mov rcx, rsi
mov edx, r13d
call fcn.0052fab7
lea r13, [rsp + 0x610]
test r12, r12
lea r12, [rsp + 0xa28]
jne 0x54ca44
test rdi, rdi
jne 0x54ce73
mov rcx, rbx
mov rdx, r14
call fcn.0052f4a1
test rax, rax
jne 0x54ca60
mov rdi, rdx
test rdx, rdx
jne 0x54ce73
cmp byte [rbx + 0xc9], 0
mov byte [rbx + 0xc9], 0
jne 0x54bf0f
jmp 0x54cb69
mov rdi, rax
jmp 0x54ca18
xor r12d, r12d
jmp 0x54ca2e
test rax, rax
je 0x54ca18
mov rcx, r12
call fcn.0052fad2
jmp 0x54ca18
mov byte [rbx + 0x1a0], 1
jmp 0x54cab0
lea rcx, [rsp + 0xbc0]
call fcn.0051fbbc
mov rcx, rsi
call fcn.0051fc06
mov byte [rbx + 0x1d8], 1
mov qword [rbx + 0x70], 4
mov qword [rbx + 0x88], 5
mov byte [rbx + 0xca], 2
lea r12, [rsp + 0xa28]
lea r13, [rsp + 0x610]
jmp 0x54ca44
cmp ebp, 6
jne 0x54caf5
mov edi, 3
jmp 0x54cc35
mov byte [rsp + 0x330], bpl
lea rax, [rsp + 0x6e1]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x331], xmm0
movups xmmword [rsp + 0x341], xmm1
mov rax, qword [rax + 0x1f]
mov qword [rsp + 0x350], rax
mov rcx, qword [rbx + 0xc8]
call fcn.0049cc37
mov rsi, rax
mov edi, 2
test rax, rax
je 0x54cbd3
lea rcx, [rsp + 0x330]
call fcn.00539a36
jmp 0x54cc35
mov rax, qword [r14]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx + 0x10]
jmp 0x54cc3a
cmp byte [rbx + 0x1d8], 0
jne 0x54cb7d
cmp qword [rbx + 0x70], 4
jne 0x54cc3a
mov rax, qword [rbx]
mov rsi, qword [rbx + 8]
and qword [rbx], 0
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], rsi
test rax, rax
je 0x54ce0e
mov qword [rsp + 0x330], rsi
mov rdi, qword [rbx + 0xb8]
and qword [rbx + 0xb8], 0
test rdi, rdi
je 0x54cc53
lea rcx, [rsp + 0x330]
call fcn.00522c37
jmp 0x54ce73
cmp ebp, 2
je 0x54cbec
cmp ebp, 1
je 0x54cbec
test rbp, rbp
jne 0x54cbfd
lea rax, [rsp + 0x338]
jmp 0x54cbf4
lea rax, [rsp + 0x334]
cmp dword [rax], 0
je 0x54ce07
mov rax, qword [rsp + 0x350]
lea rcx, [rsp + 0x1b0]
mov qword [rcx + 0x20], rax
movups xmm0, xmmword [rsp + 0x330]
movups xmm1, xmmword [rsp + 0x340]
movaps xmmword [rcx + 0x10], xmm1
movaps xmmword [rcx], xmm0
call fcn.0049ae05
mov rsi, rax
mov edi, 2
cmp edi, 3
jne 0x54cc41
mov al, 1
jmp 0x54cf5d
test rdi, rdi
je 0x54cf1b
cmp edi, 2
je 0x54cf1d
mov rax, qword [rbx]
mov qword [rbx], 3
cmp rax, 2
jae 0x54cffb
lea rdx, [rbx + 8]
lea rcx, [rsp + 0xd68]
mov qword [rcx - 8], rax
mov r8d, 0x1d8
call sub.ntdll.dll_memcpy
lea r15, [rsp + 0x1b0]
lea r14, [rsp + 0xd60]
mov r8d, 0x178
mov rcx, r15
mov rdx, r14
call sub.ntdll.dll_memcpy
lea rdx, [rsp + 0x280]
lea rdi, [rsp + 0x330]
mov r8d, 0xa8
mov rcx, rdi
call sub.ntdll.dll_memcpy
movups xmm0, xmmword [rdi + 0x18]
lea r12, [rsp + 0x6f8]
movaps xmmword [r12 - 0x18], xmm0
mov rax, qword [rdi + 0x28]
mov qword [r12 - 8], rax
lea rdi, [rsp + 0x3b0]
mov rcx, r12
mov rdx, rdi
call fcn.0048bf77
mov rcx, qword [rdi - 0x50]
mov rdx, qword [rdi - 0x48]
call fcn.00433bdd
lea rdi, [rsp + 0x380]
mov rcx, rdi
call fcn.00522ab9
mov rcx, qword [rdi]
mov rdx, qword [rdi + 8]
call fcn.00522b17
mov rcx, r14
call fcn.00540d85
movaps xmm0, xmmword [r12 - 0x18]
movaps xmmword [r15], xmm0
mov rax, qword [r12 - 8]
mov qword [r15 + 0x10], rax
movups xmm0, xmmword [r12]
movups xmmword [r15 + 0x18], xmm0
movups xmm0, xmmword [r12 + 0x10]
movups xmmword [r15 + 0x28], xmm0
lea r15, [rsp + 0x1e8]
movups xmm0, xmmword [r14 + 0x178]
movups xmm1, xmmword [r14 + 0x188]
movups xmm2, xmmword [r14 + 0x198]
movups xmmword [r15], xmm0
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15 + 0x20], xmm2
lea r14, [rsp + 0xf08]
mov rcx, r14
call fcn.00522b59
mov rcx, qword [r14 + 0x28]
call fcn.00522b64
mov rax, qword [r15 - 0x28]
mov qword [rsp + 0x5e0], rax
movaps xmm0, xmmword [r15 - 0x38]
movaps xmmword [rsp + 0x5d0], xmm0
movups xmm0, xmmword [r15 - 0x10]
movups xmmword [rdi - 0x30], xmm0
movups xmm0, xmmword [r15 - 0x20]
movups xmmword [rdi - 0x40], xmm0
mov rcx, r15
call fcn.00522b3b
mov ecx, 0x18
call fcn.00487ddb
movaps xmm0, xmmword [rsp + 0x5d0]
movups xmmword [rax], xmm0
mov rcx, qword [rsp + 0x5e0]
mov qword [rax + 0x10], rcx
mov qword [rdi - 0x50], rax
lea rax, fcn.00520a85
mov qword [rdi - 0x48], rax
lea rdx, [rsp + 0x330]
mov rcx, rsi
call fcn.0049dc53
jmp 0x54cf1b
xor edi, edi
jmp 0x54cb45
lea rcx, [rbx + 0xe8]
mov rdx, r14
call fcn.0055d271
mov rsi, rdx
test rax, rax
jne 0x54ce50
test rsi, rsi
jne 0x54ce50
lea rcx, [rsp + 0x1b0]
call fcn.00522b2b
mov rdi, qword [rbx + 0xb8]
and qword [rbx + 0xb8], 0
test rdi, rdi
jne 0x54ce73
jmp 0x54cf1b
test rax, rax
jne 0x54cc3a
test rsi, rsi
je 0x54ce2a
mov cl, 0xa
call fcn.0049ad23
mov rdi, rax
mov rcx, rax
mov rdx, rsi
call fcn.0049ad86
mov sil, byte [rbx + 0x1c8]
mov byte [rbx + 0x1c8], 3
cmp sil, 3
je 0x54cef3
movups xmm0, xmmword [rbx + 0x1a8]
movups xmm1, xmmword [rbx + 0x1b8]
lea r14, [rsp + 0x1b0]
movaps xmmword [r14 + 0x10], xmm1
movaps xmmword [r14], xmm0
mov byte [r14 + 0x20], sil
mov eax, dword [rbx + 0x1c9]
mov ecx, dword [rbx + 0x1cc]
mov dword [r14 + 0x21], eax
mov dword [r14 + 0x24], ecx
mov cl, 8
call fcn.0049ad23
mov r15, rax
lea rdx, [0x0076ea84]
mov r8d, 0x10
mov rcx, rax
call fcn.00539dce
mov rcx, qword [r14 + 0x10]
mov edx, esi
mov r8, r15
call fcn.0049cb52
mov rcx, r14
call fcn.00522bde
lea rdx, [rsp + 0x1b0]
mov qword [rdx + 8], rdi
mov qword [rdx], 3
mov rcx, qword [rsp + 0xc0]
call fcn.0052018a
mov rsi, rax
test rax, rax
jne 0x54cf1d
xor esi, esi
cmp dword [rbx], 4
je 0x54cfe9
mov rcx, rbx
call fcn.0052295a
mov qword [rbx], 4
test rsi, rsi
je 0x54cf4c
mov rcx, rsi
call fcn.0051ff2f
cmp qword [rbx], 5
je 0x54cff2
mov rcx, rbx
call fcn.0052304b
mov qword [rbx], 5
xor eax, eax
movaps xmm6, xmmword [rsp + 0x1010]
movaps xmm7, xmmword [rsp + 0x1020]
movaps xmm8, xmmword [rsp + 0x1030]
add rsp, 0x1048
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor edi, edi
jmp 0x54caf0
lea rcx, [rbx + 0x90]
mov rdx, qword [rsp + 0x60]
call fcn.0049db6f
movzx eax, al
lea rdi, [rax + rax*2]
jmp 0x54caf0
lea r14, [rsp + 0x1b0]
lea rsi, [rsp + 0x330]
mov ecx, 0xe
mov rdi, r14
rep movsq qword [rdi], qword [rsi]
mov rdi, qword [rsp + 0x80]
mov rcx, rdi
call fcn.00544556
mov ecx, 0xe
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
jmp 0x54caeb
mov qword [rbx], 4
jmp 0x54d003
mov qword [rbx], 5
jmp 0x54d003
mov rcx, rsi
call fcn.00533e61
ud2