Function at 0x180036390
Capabilities:
Get file size
Read file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1e8]
sub rsp, 0x2e8
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov rax, qword [0x180122010]
xor rax, rsp
mov qword [rbp + 0x1d8], rax
mov rbx, r9
mov qword [rbp + 0x70], r8
mov qword [rbp - 0x80], rdx
mov r13, rcx
mov qword [rbp - 0x60], rcx
mov rcx, qword [rbp + 0x250]
mov qword [rbp - 0x78], rcx
mov r14, qword [rbp + 0x258]
mov r15, qword [rbp + 0x260]
mov rax, qword [rbp + 0x268]
mov qword [rbp - 0x70], rax
xor r12d, r12d
mov esi, r12d
mov dword [rsp + 0x40], r12d
lea rax, [r9 + 0x20]
mov qword [rbp - 0x68], rax
cmp qword [r9 + 0x10], rsi
je 0x180037823
cmp qword [rax + 0x10], rsi
je 0x180037823
cmp qword [rcx + 0x10], rsi
je 0x180037823
cmp qword [r14 + 0x10], rsi
je 0x18003645a
mov rdx, r14
lea rcx, [rbp - 0x18]
call fcn.1800206b0
nop
mov esi, 1
mov dword [rsp + 0x40], esi
mov rcx, rax
call fcn.18001a0d0
test al, al
jne 0x18003645a
movzx edi, sil
jmp 0x18003645d
xor dil, dil
test sil, 1
je 0x1800364be
and esi, 0xfffffffe
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x1800364ad
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800364a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800364a8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp - 8], r12
mov qword [rbp], 7
mov word [rbp - 0x18], r12w
test dil, dil
jne 0x180037823
cmp qword [r15 + 0x10], 0
je 0x1800364f3
mov rdx, r15
lea rcx, [rbp - 0x18]
call fcn.1800206b0
nop
or esi, 2
mov dword [rsp + 0x40], esi
mov rcx, rax
call fcn.18001a0d0
test al, al
jne 0x1800364f3
mov dil, 1
jmp 0x1800364f6
xor dil, dil
test sil, 2
je 0x180036557
and esi, 0xfffffffd
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x180036546
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036541
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036541
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp - 8], r12
mov qword [rbp], 7
mov word [rbp - 0x18], r12w
test dil, dil
jne 0x180037823
mov byte [r13 + 0x38], 1
mov r8d, 0x1bb
mov rdx, rbx
mov rcx, r13
call fcn.180055b70
test al, al
je 0x180037823
mov rdx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x18003658b
mov rdx, qword [r14]
mov r9d, 0xfde9
mov r8d, dword [r14 + 0x10]
lea rcx, [rbp - 0x18]
call fcn.180020000
bts esi, 9
mov dword [rsp + 0x40], esi
btr esi, 9
mov dword [rsp + 0x40], esi
bts esi, 8
mov dword [rsp + 0x40], esi
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x178]
call fcn.18001ab00
nop
btr esi, 8
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x180036612
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003660d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18003660d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
xor r13d, r13d
mov qword [rbp - 8], r13
mov qword [rbp], 7
mov word [rbp - 0x18], r13w
mov rdx, r15
cmp qword [r15 + 0x18], 0x10
jb 0x180036633
mov rdx, qword [r15]
mov r9d, 0xfde9
mov r8d, dword [r15 + 0x10]
lea rcx, [rbp - 0x18]
call fcn.180020000
bts esi, 0xb
mov dword [rsp + 0x40], esi
btr esi, 0xb
mov dword [rsp + 0x40], esi
bts esi, 0xa
mov dword [rsp + 0x40], esi
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x158]
call fcn.18001ab00
nop
btr esi, 0xa
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x1800366ba
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800366b5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800366b5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp - 8], r13
mov qword [rbp], 7
mov word [rbp - 0x18], r13w
mov ecx, 8
call fcn.1800c8800
mov rbx, rax
mov qword [rsp + 0x48], rax
mov qword [rax], 0xffffffffffffffff
mov qword [rsp + 0x70], rax
mov ecx, 8
call fcn.1800c8800
mov rdi, rax
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rdi], 0xffffffffffffffff
mov qword [rsp + 0x68], rdi
cmp qword [r14 + 0x10], rax
je 0x18003675a
mov rdx, r14
lea rcx, [rbp - 0x18]
call fcn.1800206b0
nop
or esi, 4
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
mov r9d, 1
mov r8d, 0x80000000
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.18001deb0
mov rbx, qword [rsp + 0x70]
test al, al
jne 0x18003675a
mov r12b, 1
jmp 0x18003675d
xor r12b, r12b
test sil, 4
je 0x1800367be
and esi, 0xfffffffb
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x1800367ad
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800367a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800367a8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp - 8], r13
mov qword [rbp], 7
mov word [rbp - 0x18], r13w
test r12b, r12b
jne 0x1800377ed
cmp qword [r15 + 0x10], 0
je 0x180036819
mov rdx, r15
lea rcx, [rbp - 0x18]
call fcn.1800206b0
nop
or esi, 8
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
mov r9d, 1
mov r8d, 0x80000000
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.18001deb0
mov rdi, qword [rsp + 0x68]
test al, al
jne 0x180036819
mov r12b, 1
jmp 0x18003681c
xor r12b, r12b
test sil, 8
je 0x18003687d
and esi, 0xfffffff7
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x18003686c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036867
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036867
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp - 8], r13
mov qword [rbp], 7
mov word [rbp - 0x18], r13w
test r12b, r12b
jne 0x1800377ed
mov r12, r13
test rbx, rbx
je 0x1800368c7
mov rcx, qword [rbx]
cmp rcx, 0xffffffffffffffff
je 0x1800368c7
lea rdx, [rbp + 0x90]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov r13d, eax
cmp eax, 0xffffffff
jne 0x1800368b6
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1800368c4
mov r12d, dword [rbp + 0x90]
shl r12, 0x20
add r12, r13
xor r13d, r13d
mov rcx, r12
call fcn.1800c9094
mov qword [rsp + 0x48], rax
test rax, rax
jne 0x1800368e0
test rbx, rbx
je 0x18003692e
jmp 0x180036914
mov dword [rsp + 0x78], r13d
cmp qword [r14 + 0x10], 0
je 0x18003693a
test rbx, rbx
je 0x18003692e
cmp qword [rbx], 0xffffffffffffffff
je 0x18003692e
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x78]
mov r8d, r12d
mov rdx, rax
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x18003693a
mov rcx, qword [rbx]
cmp rcx, 0xffffffffffffffff
je 0x18003692e
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x18003692e
mov qword [rbx], 0xffffffffffffffff
xor bl, bl
mov rdi, qword [rsp + 0x48]
jmp 0x1800377de
test rbx, rbx
je 0x180036959
mov rcx, qword [rbx]
cmp rcx, 0xffffffffffffffff
je 0x180036959
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x180036959
mov qword [rbx], 0xffffffffffffffff
mov r14, r13
test rdi, rdi
je 0x180036996
mov rcx, qword [rdi]
cmp rcx, 0xffffffffffffffff
je 0x180036996
lea rdx, [rbp + 0x90]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x180036988
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x180036996
mov r14d, dword [rbp + 0x90]
shl r14, 0x20
add r14, rbx
mov rcx, r14
call fcn.1800c9094
mov r13, rax
mov qword [rbp + 0x90], rax
test rax, rax
jne 0x1800369b4
test rdi, rdi
je 0x180036a08
jmp 0x1800369ee
mov dword [rsp + 0x7c], 0
cmp qword [r15 + 0x10], 0
je 0x180036a14
test rdi, rdi
je 0x180036a08
cmp qword [rdi], 0xffffffffffffffff
je 0x180036a08
xor r15d, r15d
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x7c]
mov r8d, r14d
mov rdx, r13
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x180036a17
mov rcx, qword [rdi]
cmp rcx, 0xffffffffffffffff
je 0x180036a08
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x180036a08
mov qword [rdi], 0xffffffffffffffff
xor bl, bl
mov rdi, qword [rsp + 0x48]
jmp 0x1800377d0
xor r15d, r15d
test rdi, rdi
je 0x180036a36
mov rcx, qword [rdi]
cmp rcx, 0xffffffffffffffff
je 0x180036a36
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x180036a36
mov qword [rdi], 0xffffffffffffffff
mov qword [rbp + 0x108], r15
mov qword [rbp + 0x110], r15
mov qword [rbp + 0x108], r15
mov qword [rbp + 0x110], 0xf
mov byte [rbp + 0xf8], 0
lea rcx, [rbp + 0xf8]
mov rax, qword [rbp - 0x80]
cmp rcx, rax
je 0x180036a8a
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x180036a7a
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp + 0xf8]
call fcn.18000d1d0
mov qword [rbp - 8], r15
mov qword [rbp], r15
mov qword [rbp - 8], r15
mov qword [rbp], 0xf
mov byte [rbp - 0x18], 0
lea r9, [rbp - 0x18]
xor r8d, r8d
mov rdx, qword [rbp - 0x78]
lea rcx, [rbp + 0xf8]
call fcn.1800551b0
test al, al
jne 0x180036ac9
xor bl, bl
mov rdi, qword [rsp + 0x48]
jmp 0x1800377b9
lea rcx, [rbp + 8]
call fcn.180035f40
nop
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], r15
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], 0xf
mov byte [rbp + 0xd8], 0
mov r8d, 0x23
lea rdx, str.Content_Type:_multipart_form_data_
lea rcx, [rbp + 0xd8]
call fcn.18000d1d0
nop
mov r8d, 9
lea rdx, str.boundary
lea rcx, [rbp + 0xd8]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp + 0xd8]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp + 0xd8]
call fcn.1800379d0
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], 0
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], 0xf
mov byte [rbp + 0x48], 0
mov r8d, 0xc
lea rdx, str.data_version
lea rcx, [rbp + 0x48]
call fcn.18000d1d0
nop
mov r8, qword [rbp + 0x70]
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x98]
call fcn.180035d10
nop
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x180036c14
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
nop
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x180036c66
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036c61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036c61
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp + 0xa8], r15
mov qword [rbp + 0xb0], 0xf
mov byte [rbp + 0x98], 0
mov rdx, qword [rbp + 0x60]
cmp rdx, 0x10
jb 0x180036cbd
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036cb8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036cb8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], 0xf
mov byte [rbp + 0x48], 0
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], 0
mov r8d, 1
lea rdx, [0x1800e29bc]
lea rcx, [rbp + 0x28]
call fcn.18000d1d0
nop
mov qword [rbp + 0x80], r15
mov qword [rbp + 0x88], r15
mov qword [rbp + 0x80], r15
mov qword [rbp + 0x88], 0xf
mov byte [rbp + 0x70], 0
mov r8d, 1
lea rdx, [0x1800e294c]
lea rcx, [rbp + 0x70]
call fcn.18000d1d0
nop
lea r8, [rbp + 0x28]
lea rdx, [rbp + 0x70]
lea rcx, [rbp + 0x98]
call fcn.180035d10
nop
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x180036da0
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
nop
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x180036df2
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036ded
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036ded
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp + 0xa8], r15
mov qword [rbp + 0xb0], 0xf
mov byte [rbp + 0x98], 0
mov rdx, qword [rbp + 0x88]
cmp rdx, 0x10
jb 0x180036e4c
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036e47
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036e47
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp + 0x80], r15
mov qword [rbp + 0x88], 0xf
mov byte [rbp + 0x70], 0
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x180036ea0
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036e9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036e9b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800c8554
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], 0
mov qword [rbp + 0xa8], r15
mov qword [rbp + 0xb0], r15
mov qword [rbp + 0xa8], r15
mov qword [rbp + 0xb0], 7
mov word [rbp + 0x98], r15w
mov qword [rbp + 0xc8], r15
mov qword [rbp + 0xd0], r15
mov qword [rbp + 0xc8], r15
mov qword [rbp + 0xd0], 7
mov word [rbp + 0xb8], r15w
mov r8d, 7
lea rdx, str.2345Pic
lea rcx, [rbp + 0xb8]
call fcn.180007980
nop
lea rdx, [rbp + 0xb8]
cmp qword [rbp + 0xd0], 8
cmovae rdx, qword [rbp + 0xb8]
mov r8, qword [rbp + 0xc8]
lea rcx, [rbp + 0x98]
call fcn.180007980
nop
lea rcx, [rbp + 0xb8]
call fcn.180007900
lea rdx, [rbp + 0x138]
lea rcx, [rbp + 0x98]
call fcn.180050360
nop
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], 0xf
mov byte [rbp + 0x48], 0
mov r8d, 1
lea rdx, [0x1800e2868]
lea rcx, [rbp + 0x48]
call fcn.18000d1d0
nop
lea rdx, [rbp + 0x138]
cmp qword [rbp + 0x150], 8
cmovae rdx, qword [rbp + 0x138]
xor r9d, r9d
mov r8d, dword [rbp + 0x148]
lea rcx, [rbp + 0x198]
call fcn.180020640
bts esi, 0x10
mov dword [rsp + 0x40], esi
mov r8, rax
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x70]
call fcn.180035d10
nop
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x18003702e
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
nop
lea rcx, [rbp + 0x70]
call fcn.180007b10
btr esi, 0x10
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x198]
call fcn.180007b10
nop
lea rcx, [rbp + 0x48]
call fcn.180007b10
movdqa xmm0, xmmword [0x1800e71f0]
movdqu xmmword [rbp + 0x70], xmm0
lea rdx, [rbp + 0x118]
lea rcx, [rbp + 0x70]
call fcn.180022aa0
nop
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], 0
mov r8d, 1
lea rdx, [0x1800e2950]
lea rcx, [rbp + 0x28]
call fcn.18000d1d0
nop
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rdx, qword [rbp + 0x118]
xor r9d, r9d
mov r8d, dword [rbp + 0x128]
lea rcx, [rbp + 0x70]
call fcn.180020640
bts esi, 0x12
mov dword [rsp + 0x40], esi
mov r8, rax
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x198]
call fcn.180035d10
nop
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x18003714a
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
nop
lea rcx, [rbp + 0x198]
call fcn.180007b10
btr esi, 0x12
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x70]
call fcn.180007b10
nop
lea rcx, [rbp + 0x28]
call fcn.180007b10
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x58], r15
mov qword [rbp + 0x60], 0xf
mov byte [rbp + 0x48], 0
mov r8d, 0xb
lea rdx, str.client_data
lea rcx, [rbp + 0x48]
call fcn.18000d1d0
nop
lea r8, [rbp - 0x18]
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x198]
call fcn.180035d10
nop
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x180037217
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
nop
lea rcx, [rbp + 0x198]
call fcn.180007b10
nop
lea rcx, [rbp + 0x48]
call fcn.180007b10
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 0x3a
lea rdx, str.Content_Disposition:_form_data__name_current___filename_
lea rcx, [rbp - 0x38]
call fcn.1800379d0
nop
lea rdx, [rbp + 0x178]
cmp qword [rbp + 0x190], 8
cmovae rdx, qword [rbp + 0x178]
mov r9d, 0xfde9
mov r8d, dword [rbp + 0x188]
lea rcx, [rbp + 0x28]
call fcn.180020640
bts esi, 0x15
mov dword [rsp + 0x40], esi
btr esi, 0x15
mov dword [rsp + 0x40], esi
bts esi, 0x14
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 0x28]
cmp qword [rbp + 0x40], 0x10
cmovae rdx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x38]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
btr esi, 0x14
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x28]
call fcn.180007b10
mov r8d, 1
lea rdx, [0x1800e29b8]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 0x1d
lea rdx, str.Content_Type:_application_png
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r15
mov rcx, qword [rbp - 0x28]
lea rdx, [rcx + 0x400]
add rdx, r12
mov rax, qword [rsp + 0x60]
sub rax, qword [rsp + 0x50]
cmp rdx, rax
jbe 0x1800373c4
movabs rax, 0x7fffffffffffffff
cmp rdx, rax
ja 0x180037848
lea rcx, [rsp + 0x50]
call fcn.180037920
mov rcx, qword [rbp - 0x28]
mov byte [rsp + 0x44], 0
lea rdx, [rcx + r12]
lea rax, [rsp + 0x50]
mov qword [rbp + 0x70], rax
lea rax, [rsp + 0x44]
mov qword [rbp + 0x78], rax
movaps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rbp + 0x70], xmm0
lea r8, [rbp + 0x70]
lea rcx, [rsp + 0x50]
call fcn.180037b90
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x28]
mov rcx, qword [rsp + 0x50]
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp - 0x28]
add rcx, qword [rsp + 0x50]
mov r8, r12
mov rdi, qword [rsp + 0x48]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x28], r15
lea rax, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae rax, qword [rbp - 0x38]
mov byte [rax], 0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 0x38
lea rdx, str.Content_Disposition:_form_data__name_extra___filename_
lea rcx, [rbp - 0x38]
call fcn.1800379d0
nop
lea rdx, [rbp + 0x158]
cmp qword [rbp + 0x170], 8
cmovae rdx, qword [rbp + 0x158]
mov r9d, 0xfde9
mov r8d, dword [rbp + 0x168]
lea rcx, [rbp + 0x28]
call fcn.180020640
bts esi, 0x18
mov dword [rsp + 0x40], esi
btr esi, 0x18
mov dword [rsp + 0x40], esi
bts esi, 0x17
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 0x28]
cmp qword [rbp + 0x40], 0x10
cmovae rdx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x38]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
btr esi, 0x17
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x28]
call fcn.180007b10
mov r8d, 1
lea rdx, [0x1800e29b8]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 0x1d
lea rdx, str.Content_Type:_application_png
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov rbx, qword [rsp + 0x58]
sub rbx, qword [rsp + 0x50]
lea rdx, [rbx + r14]
add rdx, qword [rbp - 0x28]
lea rcx, [rsp + 0x50]
call fcn.180037cf0
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae rdx, qword [rbp - 0x38]
mov rcx, qword [rsp + 0x50]
add rcx, rbx
mov r8, qword [rbp - 0x28]
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0x50]
add rcx, rbx
add rcx, qword [rbp - 0x28]
mov r8, r14
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x28], r15
lea rax, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae rax, qword [rbp - 0x38]
mov byte [rax], 0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e28bc]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov r8d, 2
lea rdx, [0x1800e289c]
lea rcx, [rbp - 0x38]
call fcn.1800379d0
mov rbx, qword [rsp + 0x58]
sub rbx, qword [rsp + 0x50]
mov rdx, qword [rbp - 0x28]
add rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.180037cf0
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae rdx, qword [rbp - 0x38]
mov rcx, qword [rsp + 0x50]
add rcx, rbx
mov r8, qword [rbp - 0x28]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x28], r15
lea rax, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae rax, qword [rbp - 0x38]
mov byte [rax], 0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], r15
mov rbx, qword [rbp - 0x70]
mov qword [rbx + 0x10], r15
mov rax, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x1800376dd
mov rax, qword [rbx]
mov byte [rax], 0
mov r8d, 0xfde9
lea rdx, [rbp + 0xd8]
lea rcx, [rbp + 0x1b8]
call fcn.18001ffb0
nop
mov rax, qword [rsp + 0x58]
mov r9, qword [rsp + 0x50]
sub rax, r9
lea r8, [rbp + 0x1b8]
cmp qword [rbp + 0x1d0], 8
cmovae r8, qword [rbp + 0x1b8]
mov rcx, qword [rbp - 0x68]
cmp qword [rcx + 0x18], 8
jb 0x18003772c
mov rcx, qword [rcx]
lea rdx, [rbp - 0x58]
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x20], eax
mov rdx, rcx
mov rcx, qword [rbp - 0x60]
call fcn.180056360
test al, al
setne bl
lea rcx, [rbp + 0x1b8]
call fcn.180007900
nop
lea rcx, [rbp - 0x58]
call fcn.1800378b0
nop
lea rcx, [rsp + 0x50]
call fcn.18002add0
nop
lea rcx, [rbp + 0x118]
call fcn.180007900
nop
lea rcx, [rbp + 0x138]
call fcn.180007900
nop
lea rcx, [rbp + 0x98]
call fcn.180007900
nop
lea rcx, [rbp - 0x38]
call fcn.180007b10
nop
lea rcx, [rbp + 0xd8]
call fcn.180007b10
nop
lea rcx, [rbp + 8]
call fcn.180007b10
nop
lea rcx, [rbp - 0x18]
call fcn.180007b10
nop
lea rcx, [rbp + 0xf8]
call fcn.180007b10
nop
test r13, r13
je 0x1800377de
mov rcx, r13
call fcn.1800c8554
nop
test rdi, rdi
je 0x1800377ef
mov rcx, rdi
call fcn.1800c8554
jmp 0x1800377ef
xor bl, bl
lea rcx, [rsp + 0x68]
call fcn.18001de50
nop
lea rcx, [rsp + 0x70]
call fcn.18001de50
nop
lea rcx, [rbp + 0x158]
call fcn.180007900
nop
lea rcx, [rbp + 0x178]
call fcn.180007900
movzx eax, bl
jmp 0x180037825
xor al, al
mov rcx, qword [rbp + 0x1d8]
xor rcx, rsp
call fcn.1800c8530
add rsp, 0x2e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18000d320
nop
int3