Function at 0x140008330
Capabilities:
Terminate process

Disassembly:
push rbx
push rdi
push r14
sub rsp, 0x80
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rdi, rcx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rdx + 0xa0]
mov rbx, r8
mov r14, rdx
mov qword [rsp + 0x20], rbx
test rcx, rcx
je 0x140008c79
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x140008372
cmp rax, qword [rdx + 0xa8]
je 0x14000839a
mov r9, rbx
mov r8d, 0x190
mov rcx, rdi
call fcn.140007800
jmp 0x140008bb5
test rcx, rcx
je 0x140008c79
mov rax, qword [rdx + 0xa8]
movzx edx, byte [rax + rcx - 1]
cmp dl, 0x2e
je 0x1400083b9
cmp dl, 0x20
jne 0x1400083d2
mov r9, rbx
mov r8d, 0x1f4
mov rdx, r14
mov rcx, rdi
call fcn.140007800
jmp 0x140008bb5
test rcx, rcx
je 0x140008c79
xor edx, edx
call qword [sym.imp.MSVCR110.dll__open]
test eax, eax
js 0x140008c79
mov qword [rsp + 0xb8], rbp
xor ebp, ebp
mov qword [rsp + 0x60], r15
mov qword [r14 + 0x1a8], rbp
mov qword [r14 + 0x1b0], rbp
mov rdx, qword [r14 + 0x168]
mov rcx, qword [r14 + 0x160]
or dword [r14 + 0x1a0], 1
mov dword [r14 + 0x1b8], eax
xor eax, eax
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
call fcn.140004930
mov edx, dword [r14 + 0x7c]
test rax, rax
lea r15, str.application_octet_stream
lea r9d, [rbp + 1]
lea rcx, [rsp + 0x30]
mov r8d, 0xc8
cmovne r15, rax
call fcn.140003840
cmp qword [rsp + 0x30], rbp
jne 0x140008483
mov r9, rbx
xor r8d, r8d
mov edx, 0x1f4
mov rcx, r14
call fcn.1400064c0
or eax, 0xffffffff
jmp 0x140008ba8
lea rcx, [rsp + 0x30]
mov r8d, 1
mov rdx, r14
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x70], r12
call fcn.1400043f0
mov rbx, qword [rsp + 0x30]
test rbx, rbx
jne 0x1400084ec
lea edx, [rbx + 0x4f]
xor ecx, ecx
mov rsi, rbp
lea edi, [rbx + 0x4e]
lea r12d, [rbx + 0xe]
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008558
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rdi - 0x4d]
call qword [sym.imp.MSVCR110.dll_exit]
int3
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
lea r12, [rsi + 0xe]
cmp r12, rdi
jb 0x140008558
lea rdi, [r12 + 0x80]
cmp rdi, 0x7fffffff
jb 0x140008522
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008558
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
mov rax, qword [str.Content_Type:]
mov qword [rsi + rbx], rax
mov eax, dword [0x14000ffb0]
mov dword [rsi + rbx + 8], eax
movzx eax, word [0x14000ffb4]
mov word [rsi + rbx + 0xc], ax
or rsi, 0xffffffffffffffff
test rbx, rbx
jne 0x1400085e7
mov r12, rbp
inc rsi
cmp byte [r15 + rsi], bpl
jne 0x140008585
cmp rsi, 0x4e
jae 0x14000859b
mov edi, 0x4e
jmp 0x1400085ae
mov rdi, rsi
cmp rsi, 0x7fffff7f
jae 0x1400085ae
lea rdi, [rsi + 0x80]
lea rdx, [rdi + 1]
xor ecx, ecx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008650
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
inc rsi
cmp byte [r15 + rsi], bpl
jne 0x1400085e7
add rsi, r12
cmp rsi, rdi
jb 0x140008650
lea rdi, [rsi + 0x80]
cmp rdi, 0x7fffffff
jb 0x14000861a
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008650
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
or r8, 0xffffffffffffffff
inc r8
cmp byte [r15 + r8], bpl
jne 0x140008654
lea rcx, [r12 + rbx]
mov rdx, r15
call sub.MSVCR110.dll_memcpy
lea rdx, str.text_
mov r8d, 5
mov rcx, r15
call qword [sym.imp.MSVCR110.dll_strncmp]
test eax, eax
jne 0x14000875e
test rbx, rbx
jne 0x1400086ce
lea edx, [rax + 0x4f]
xor ecx, ecx
mov rsi, rbp
lea edi, [rax + 0x4e]
lea r15d, [rax + 0xf]
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x14000872f
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rdi - 0x4d]
call qword [sym.imp.MSVCR110.dll_exit]
int3
lea r15, [rsi + 0xf]
cmp r15, rdi
jb 0x14000872f
lea rdi, [r15 + 0x80]
cmp rdi, 0x7fffffff
jb 0x1400086f9
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x14000872f
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
mov rax, qword [str.__charsetUTF_8]
mov qword [rsi + rbx], rax
mov eax, dword [0x14000ffc8]
mov dword [rsi + rbx + 8], eax
movzx eax, word [0x14000ffcc]
mov word [rsi + rbx + 0xc], ax
movzx eax, byte [0x14000ffce]
mov byte [rsi + rbx + 0xe], al
mov rsi, r15
mov qword [rsp + 0x68], r13
mov r13d, 2
test rbx, rbx
jne 0x1400087af
lea edx, [rbx + 0x4f]
xor ecx, ecx
mov rsi, rbp
mov r15d, r13d
lea edi, [rbx + 0x4e]
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008810
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rdi - 0x4d]
call qword [sym.imp.MSVCR110.dll_exit]
int3
lea r15, [rsi + 2]
cmp r15, rdi
jb 0x140008810
lea rdi, [r15 + 0x80]
cmp rdi, 0x7fffffff
jb 0x1400087da
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008810
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
mov eax, 0xa0d
mov word [rsi + rbx], ax
test rbx, rbx
jne 0x140008860
lea edx, [rbx + 0x4f]
xor ecx, ecx
mov r15, rbp
lea edi, [rbx + 0x4e]
lea r12d, [rbx + 0x10]
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x1400088c2
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rdi - 0x4d]
call qword [sym.imp.MSVCR110.dll_exit]
int3
lea r12, [r15 + 0x10]
cmp r12, rdi
jb 0x1400088c2
lea rdi, [r12 + 0x80]
cmp rdi, 0x7fffffff
jb 0x14000888c
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x1400088c2
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
mov rax, qword [str.Content_Length:]
mov byte [rsp + 0x4f], bpl
movabs r9, 0xcccccccccccccccd
mov qword [r15 + rbx], rax
mov rax, qword [0x14000ff78]
mov qword [r15 + rbx + 8], rax
movsxd r8, dword [r14 + 0x184]
lea r15, [rsp + 0x4f]
nop word [rax + rax]
dec r15
mov rax, r9
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r15], r8b
mov r8, rdx
test rdx, rdx
jne 0x140008900
lea rsi, [rsp + 0x4f]
sub rsi, r15
test rbx, rbx
jne 0x140008991
mov r12, rbp
cmp rsi, 0x4e
jae 0x140008945
lea edi, [rdx + 0x4e]
jmp 0x140008958
mov rdi, rsi
cmp rsi, 0x7fffff7f
jae 0x140008958
lea rdi, [rsi + 0x80]
lea rdx, [rdi + 1]
xor ecx, ecx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x1400089f1
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
add rsi, r12
cmp rsi, rdi
jb 0x1400089f1
lea rdi, [rsi + 0x80]
cmp rdi, 0x7fffffff
jb 0x1400089bb
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x1400089f1
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
lea r8, [rsp + 0x4f]
lea rcx, [r12 + rbx]
mov rdx, r15
sub r8, r15
call sub.MSVCR110.dll_memcpy
test rbx, rbx
jne 0x140008a4b
lea edx, [rbx + 0x4f]
xor ecx, ecx
mov rsi, rbp
mov r15, r13
lea edi, [rbx + 0x4e]
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008aac
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rdi - 0x4d]
call qword [sym.imp.MSVCR110.dll_exit]
int3
lea r15, [rsi + 2]
cmp r15, rdi
jb 0x140008aac
lea rdi, [r15 + 0x80]
cmp rdi, 0x7fffffff
jb 0x140008a76
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008aac
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
mov r12d, 0xa0d
mov word [rsi + rbx], r12w
test rbx, rbx
jne 0x140008af7
lea edx, [rbx + 0x4f]
xor ecx, ecx
mov r15, rbp
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008b58
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
lea r13, [r15 + 2]
cmp r13, rdi
jb 0x140008b58
lea rdi, [r13 + 0x80]
cmp rdi, 0x7fffffff
jb 0x140008b22
lea rdx, str.String_size_overflow
mov ecx, 1
call qword [sym.imp.php5ts.dll_zend_error]
lea rdx, [rdi + 1]
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_realloc]
mov rbx, rax
test rax, rax
jne 0x140008b58
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Out_of_memory_n
lea rcx, [rax + 0x60]
call qword [sym.imp.MSVCR110.dll_fprintf]
lea ecx, [rbx + 1]
call qword [sym.imp.MSVCR110.dll_exit]
int3
mov r8, r13
mov rdx, rbx
mov rcx, rbx
mov word [r15 + rbx], r12w
call fcn.140006170
mov rdx, rax
test rax, rax
jne 0x140008bce
test rbx, rbx
je 0x140008b81
mov rcx, rbx
call qword [sym.imp.MSVCR110.dll_free]
mov r9, qword [rsp + 0x20]
xor r8d, r8d
mov edx, 0x1f4
mov rcx, r14
call fcn.1400064c0
or eax, 0xffffffff
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0xb8]
mov r15, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.14000bdd0
add rsp, 0x80
pop r14
pop rdi
pop rbx
ret
mov rcx, rax
mov rax, qword [rax]
test rax, rax
je 0x140008beb
nop dword [rax]
mov rcx, rax
mov rax, qword [rax]
test rax, rax
jne 0x140008be0
mov rax, qword [r14 + 0x1b0]
test rax, rax
jne 0x140008c00
mov qword [r14 + 0x1a8], rdx
jmp 0x140008c03
mov qword [rax], rdx
mov r9, qword [rsp + 0x20]
mov qword [r14 + 0x1b0], rcx
xor r8d, r8d
mov edx, 0xc8
mov rcx, r14
call fcn.1400064c0
mov r9, qword [rsp + 0x28]
movsxd r8, dword [r14 + 8]
mov ecx, dword [r9 + 0x810]
test ecx, ecx
je 0x140008c45
mov eax, ebp
cmp qword [r9 + rax*8 + 0x818], r8
je 0x140008c45
inc ebp
cmp ebp, ecx
jb 0x140008c33
cmp ebp, ecx
jne 0x140008c62
cmp ecx, 0x100
jae 0x140008c62
mov eax, ebp
mov qword [r9 + rax*8 + 0x818], r8
inc dword [r9 + 0x810]
cmp r8, qword [r9 + 0x2028]
jbe 0x140008c72
mov qword [r9 + 0x2028], r8
xor eax, eax
jmp 0x140008b99
mov r9, rbx
mov r8d, 0x194
mov rdx, r14
mov rcx, rdi
call fcn.140007800
jmp 0x140008bb5