Function at 0x7302a0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov eax, dword [rcx + 0x3c]
mov edi, r8d
mov dword [rsp + 0x6c], eax
mov r15, rcx
mov r13, rdx
mov r8, r9
test eax, eax
jne 0x730440
mov r10d, dword [rsp + 0x130]
test r10d, r10d
js 0x730418
movsxd rax, dword [rsp + 0x130]
mov esi, dword [rsp + 0x138]
add rax, 2
mov r12d, esi
shl rax, 4
add rax, rdx
cmp dword [rax + 4], esi
cmovle r12d, dword [rax + 4]
movsxd rsi, r12d
cmp r12d, 2
jle 0x731718
mov ebx, 2
nop word cs:[rax + rax]
add rbx, rbx
cmp rbx, rsi
jl 0x730320
lea rdx, [rbx - 1]
mov rbp, rbx
mov rax, rdx
shl rax, 4
add rax, rdx
lea rdx, [rbx + rax*2 + 0x3a]
shl rdx, 2
lea rax, [r15 + 0x3c]
mov qword [rsp + 0x118], r8
mov rcx, rax
mov qword [rsp + 0x78], rax
call fcn.007cc570
mov r8, qword [rsp + 0x118]
test rax, rax
mov r14, rax
je 0x730440
mov rax, rbp
mov dword [r14 + 0x40], ebx
shl rax, 4
mov qword [r14 + 0x18], r15
add rax, rbp
lea rax, [r14 + rax*8 + 0x60]
mov qword [r14 + 0x58], rax
lea rax, [0x0072e730]
mov qword [r14 + 0x38], rax
mov rax, qword [rsp + 0x140]
mov qword [rax], r14
mov eax, edi
and eax, 2
mov qword [r14 + 0x30], r8
mov dword [rsp + 0x70], eax
setne al
movzx eax, al
mov dword [r14 + 0x44], eax
mov eax, edi
shr eax, 4
and eax, 1
mov byte [r14 + 0x48], al
test dil, 0x20
jne 0x730480
mov r9d, dword [r15 + 0x3c]
test r9d, r9d
jne 0x730690
mov rdx, qword [r15]
mov eax, dword [rdx + 0x5c]
cmp eax, 1
je 0x7306c6
test r8, r8
je 0x73155e
mov ecx, dword [r8]
test ecx, ecx
je 0x7314ff
test eax, eax
jne 0x73172c
lea rax, [0x0072e360]
mov qword [r14 + 0x38], rax
jmp 0x73048c
cmp qword [rcx + 0x18], 0
mov r12d, dword [rdx + 0x18]
je 0x730304
xor eax, eax
test dil, 0x40
sete al
add r12d, eax
jmp 0x730304
mov rax, qword [rsp + 0x140]
mov qword [rax], 0
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [0x0072e240]
mov rcx, qword [rsp + 0x78]
lea rdx, [r14 + 0x20]
mov qword [r14 + 0x38], rax
lea r8, [r14 + 0x2c]
call fcn.007c78a0
mov eax, dword [r15 + 0x3c]
test eax, eax
jne 0x730690
mov eax, dword [rsp + 0x130]
test eax, eax
js 0x7306e0
sub r12d, 1
js 0x730516
movsxd rax, r12d
mov r12d, r12d
lea rdi, [r14 + 0x60]
sub rsi, r12
lea rbx, [rax*8]
sub rbx, rax
lea rax, [rsi*8]
sub rax, rsi
shl rbx, 3
lea rsi, [rax*8 - 0x70]
movsxd rax, dword [rsp + 0x130]
add rax, 2
shl rax, 4
add r13, rax
nop dword [rax + rax]
mov rdx, qword [r13 + 8]
mov r8, rdi
mov rcx, r15
add rdi, 0x88
add rdx, rbx
sub rbx, 0x38
call fcn.00735630
cmp rsi, rbx
jne 0x7304e8
mov edi, dword [r15 + 0x3c]
test edi, edi
jne 0x730690
mov eax, dword [r14 + 0x40]
lea esi, [rax - 1]
test esi, esi
jle 0x7305e1
nop dword [rax]
mov edx, esi
mov rcx, r14
call fcn.0072f980
mov ebx, eax
test eax, eax
je 0x7305d8
mov edi, dword [r15 + 0x3c]
test edi, edi
jne 0x730568
movsxd rdx, eax
xor r8d, r8d
mov rcx, r15
mov rax, rdx
shl rax, 4
add rax, rdx
shl rax, 3
lea rdx, [r14 + rax + 0x60]
call qword [r14 + rax + 0x98]
mov eax, dword [r14 + 0x40]
add eax, ebx
mov ebx, eax
shr ebx, 0x1f
add ebx, eax
sar ebx, 1
cmp ebx, esi
jl 0x7305d8
nop dword [rax + rax]
mov r11d, dword [r15 + 0x3c]
test r11d, r11d
jne 0x7305d8
mov edx, ebx
mov rcx, r14
call fcn.0072f980
mov edi, eax
test eax, eax
je 0x730678
movsxd rdx, eax
xor r8d, r8d
mov rcx, r15
mov rax, rdx
shl rax, 4
add rax, rdx
shl rax, 3
lea rdx, [r14 + rax + 0x60]
call qword [r14 + rax + 0x98]
add edi, dword [r14 + 0x40]
mov ebx, edi
shr ebx, 0x1f
add ebx, edi
sar ebx, 1
cmp esi, ebx
jle 0x730580
nop word [rax + rax]
sub esi, 1
jne 0x730528
mov rax, qword [r14 + 0x58]
movzx edx, word [rax + 4]
mov rax, rdx
shl rax, 4
add rax, rdx
lea rax, [r14 + rax*8]
mov rdx, qword [rax + 0x70]
test rdx, rdx
sete byte [r14 + 0x14]
mov rcx, qword [rax + 0xd8]
cmp byte [r14 + 0x48], 0
mov qword [r14 + 0x50], rcx
je 0x730638
mov r10d, dword [r15 + 0x3c]
test r10d, r10d
jne 0x730638
test rdx, rdx
je 0x730638
mov r9d, dword [rax + 0xe0]
test r9d, r9d
je 0x7306b0
nop dword [rax + rax]
mov rcx, r14
call fcn.00730050
test eax, eax
jne 0x7306b0
cmp byte [r14 + 0x14], 0
jne 0x73044f
mov rax, qword [r14 + 0x58]
mov rcx, r14
movzx edx, word [rax + 4]
mov rax, rdx
shl rax, 4
add rax, rdx
lea rdx, [r14 + rax*8 + 0x60]
call qword [r14 + 0x38]
jmp 0x73044f
sar ebx, 1
cmp ebx, esi
jge 0x730580
sub esi, 1
jne 0x730528
jmp 0x7305e1
mov rcx, r14
call fcn.0072fac0
mov rax, qword [rsp + 0x140]
mov qword [rax], 0
jmp 0x73044f
xor r9d, r9d
xor r8d, r8d
mov rdx, r14
mov rcx, r15
call fcn.007319a0
jmp 0x73044f
lea rax, [0x0072e710]
mov qword [r14 + 0x38], rax
jmp 0x73048c
movsxd rax, dword [r13 + 0x1c]
mov r12, qword [r15 + 0x18]
add rax, 2
shl rax, 4
add rax, r13
mov qword [rsp + 0x80], rax
test r12, r12
je 0x73070b
mov ebx, edi
and ebx, 0x40
je 0x73156e
lea rax, [r13 + 0x20]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x80], rax
jbe 0x730516
and edi, 8
mov qword [rsp + 0x88], r14
mov r12, r15
mov dword [rsp + 0x68], edi
nop dword [rax]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 4]
mov dword [rsp + 0x74], eax
sub eax, 1
js 0x730b83
movsxd rcx, eax
mov eax, eax
mov r13, r12
lea rdx, [rcx*8]
sub rdx, rcx
lea rsi, [rdx*8]
movsxd rdx, dword [rsp + 0x6c]
mov qword [rsp + 0x40], rsi
mov rsi, qword [rsp + 0x88]
mov rcx, rdx
add rax, rdx
shl rcx, 4
add rcx, rdx
mov rdx, rax
shl rdx, 4
lea r14, [rsi + rcx*8 + 0x60]
add rax, rdx
lea rax, [rsi + rax*8 + 0xe8]
mov qword [rsp + 0x50], rax
nop dword [rax + rax]
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x40]
add r12, qword [rax + 8]
cmp qword [rsp + 0x120], 0
je 0x730ee0
lea rdi, [r14 + 0x10]
mov eax, r14d
mov qword [r14 + 8], 0
mov qword [r14 + 0x80], 0
and rdi, 0xfffffffffffffff8
sub eax, edi
lea ecx, [rax + 0x88]
xor eax, eax
shr ecx, 3
rep stosq qword [rdi], rax
mov qword [r14], r12
mov rsi, qword [r13 + 0x68]
test rsi, rsi
je 0x731060
mov ebx, dword [r13 + 0x3c]
test ebx, ebx
jne 0x730b60
xor edx, edx
mov rcx, rsi
mov ebx, dword [r12]
call fcn.0084b890
test eax, eax
jne 0x730857
mov rcx, qword [rsi + 0x80]
movsxd rdx, ebx
test word [rcx + 0x14], 0x9000
jne 0x7311f0
mov r11d, 4
mov qword [rcx], rdx
mov word [rcx + 0x14], r11w
mov rax, qword [rsi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x730857
call qword [0x008693f0]
mov r10d, dword [rsp + 0x128]
test r10d, r10d
js 0x731200
mov edx, 1
mov rcx, rsi
call fcn.0084b890
test eax, eax
jne 0x7308a7
mov dword [rsp + 0x28], 0
mov edx, 2
mov rcx, rsi
movsxd r9, dword [rsp + 0x128]
mov qword [rsp + 0x20], 0
mov r8, qword [rsp + 0x120]
call fcn.006e0020
mov rcx, rsi
mov ebx, 1
call fcn.00833a40
mov dword [rsp + 0x60], 0
cmp eax, 0x64
je 0x731150
mov rcx, rsi
call fcn.00831020
mov edx, 1
mov rcx, rsi
mov dword [r13 + 0x3c], eax
call fcn.0084b890
test eax, eax
jne 0x7308f4
mov rax, qword [rsi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x7308f4
call qword [0x008693f0]
mov eax, dword [r12 + 4]
cmp eax, ebx
jle 0x730907
mov dword [rsp + 0x60], 0
mov ebx, eax
sub ebx, 1
mov rdx, r14
mov rcx, r13
mov dword [r14 + 0xc], ebx
call fcn.007363a0
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x730fc0
mov rbp, qword [rax]
mov r12d, dword [rax + 8]
mov edx, 1
mov dword [rsp + 0xa0], 0
mov ecx, dword [rax + 0xc]
mov rdi, rcx
add rcx, rbp
movzx ebx, byte [rcx]
test bl, bl
jns 0x730987
movzx edx, byte [rcx + 1]
test dl, dl
jns 0x7312d0
movzx eax, byte [rcx + 2]
shl ebx, 0xe
or ebx, eax
test al, 0x80
je 0x7312f8
lea rdx, [rsp + 0xa8]
call fcn.007ca200
mov ebx, dword [rsp + 0xa8]
movzx edx, al
and ebx, 0x7fffffff
mov dword [rsp + 0x9c], ebx
cmp r12d, ebx
jb 0x730fd0
add edi, edx
lea rdx, [rsp + 0xa8]
mov eax, ebx
xor esi, esi
mov qword [rsp + 0x58], rdx
xor r15d, r15d
nop dword [rax]
mov r8d, eax
lea edx, [rax + 1]
add r8, rbp
mov dword [rsp + 0x9c], edx
movzx r9d, byte [r8]
mov dword [rsp + 0xa0], r9d
test r9b, r9b
js 0x730bb0
cmp r15d, esi
ja 0x730c27
je 0x730ef8
cmp r12d, edi
jbe 0x730f90
mov ecx, edi
mov eax, 1
add rcx, rbp
movzx edx, byte [rcx]
mov r8d, edx
test dl, dl
jns 0x730a3f
movzx eax, byte [rcx + 1]
test al, al
jns 0x730fe8
movzx r8d, byte [rcx + 2]
shl edx, 0xe
or edx, r8d
and r8d, 0x80
je 0x731000
mov rdx, qword [rsp + 0x58]
call fcn.007ca200
mov edx, dword [rsp + 0xa8]
movzx eax, al
and edx, 0x7fffffff
add ebx, edx
add edi, eax
cmp r12d, ebx
jbe 0x730fd0
mov ecx, ebx
lea eax, [rbx + 1]
add rcx, rbp
mov dword [rsp + 0x9c], eax
movzx esi, byte [rcx]
test sil, sil
jns 0x7309b0
mov dword [rsp + 0x9c], ebx
movzx esi, byte [rcx]
test sil, sil
jns 0x7309b0
movzx eax, byte [rcx + 1]
test al, al
jns 0x731100
movzx edx, byte [rcx + 2]
shl esi, 0xe
or esi, edx
and edx, 0x80
je 0x731130
mov rdx, qword [rsp + 0x58]
call fcn.007ca200
mov esi, dword [rsp + 0xa8]
movzx eax, al
add eax, dword [rsp + 0x9c]
and esi, 0x7fffffff
jmp 0x7309b0
mov r8d, dword [rsp + 0x60]
test r8d, r8d
je 0x730b10
mov rax, qword [r14]
mov r9d, dword [r14 + 0x40]
and edx, 2
mov r8d, dword [rax]
cmp r9d, dword [r14 + 0xc]
jne 0x730aee
mov eax, dword [rcx + 0xc]
cmp dword [r14 + 0x4c], eax
jl 0x730afa
mov rcx, r13
call fcn.00722030
mov qword [r14 + 0x60], rax
mov eax, dword [rsp + 0x70]
test eax, eax
jne 0x730d57
nop word cs:[rax + rax]
test byte [r14 + 8], 2
je 0x731030
lea rax, [0x00736990]
mov qword [r14 + 0x38], rax
mov rax, qword [r14]
mov ebx, dword [rax + 0x20]
test ebx, ebx
jle 0x730b60
mov ebp, dword [r13 + 0x3c]
test ebp, ebp
jne 0x730b60
movsxd rdx, ebx
mov rcx, qword [rsp + 0x78]
shl rdx, 4
call fcn.007cc570
test rax, rax
je 0x730b60
mov qword [r14 + 0x28], rax
mov dword [r14 + 0x30], ebx
nop word cs:[rax + rax]
sub qword [rsp + 0x40], 0x38
add r14, 0x88
cmp qword [rsp + 0x50], r14
jne 0x7307a8
mov esi, dword [rsp + 0x74]
add dword [rsp + 0x6c], esi
mov r12, r13
add qword [rsp + 0x48], 0x10
mov rax, qword [rsp + 0x48]
cmp qword [rsp + 0x80], rax
ja 0x730738
mov r14, qword [rsp + 0x88]
mov r15, r12
jmp 0x73050a
mov dword [rsp + 0x9c], eax
movzx r9d, byte [r8]
mov ecx, r9d
test r9b, r9b
jns 0x731020
movzx edx, byte [r8 + 1]
test dl, dl
jns 0x7310e0
movzx ecx, byte [r8 + 2]
shl r9d, 0xe
or r9d, ecx
and ecx, 0x80
je 0x731110
mov rdx, qword [rsp + 0x58]
mov rcx, r8
call fcn.007ca200
mov edx, dword [rsp + 0xa8]
and edx, 0x7fffffff
mov dword [rsp + 0xa0], edx
movzx edx, al
add edx, dword [rsp + 0x9c]
mov dword [rsp + 0x9c], edx
cmp r15d, esi
jbe 0x7309de
mov ecx, dword [rsp + 0x68]
test ecx, ecx
je 0x731330
mov r11d, dword [rsp + 0xa0]
mov ecx, r11d
mov eax, edx
add rax, rcx
mov ecx, r12d
cmp rax, rcx
jg 0x730fd0
test r11d, r11d
je 0x730fd0
lea eax, [rdx + r11]
mov r8d, esi
lea r15, [r14 + 0x68]
mov rsi, qword [rsp + 0x78]
mov qword [r14 + 0x20], rax
mov r9, qword [rsp + 0x120]
mov rdx, r15
mov dword [r14 + 0x44], eax
mov eax, dword [r14 + 0xc]
mov rcx, rsi
mov dword [r14 + 0x70], 0
mov dword [r14 + 0x40], eax
call fcn.007c7510
mov eax, dword [rsp + 0x9c]
mov rdx, r15
mov rcx, rsi
mov r8d, dword [rsp + 0xa0]
lea r9, [rbp + rax]
call fcn.007c7510
cmp r12d, edi
ja 0x731536
mov rax, qword [r14 + 0x10]
mov esi, dword [rax + 8]
lea edx, [rsi + 1]
mov dword [r14 + 0x4c], edx
mov rbx, qword [r14 + 0x20]
movsxd rdx, dword [rax + 0xc]
mov dword [r14 + 0x48], edi
cmp rdx, rbx
jle 0x730cea
jmp 0x73191e
cmp dword [rax + 0xc], 4
jg 0x73147b
mov rdx, r14
mov rcx, r13
call fcn.007363a0
mov rax, qword [r14 + 0x10]
test rax, rax
jne 0x730ce0
mov eax, dword [r13 + 0x3c]
test eax, eax
je 0x730fd0
nop word [rax + rax]
or eax, dword [rsp + 0x68]
jne 0x730b10
mov eax, dword [r14 + 8]
mov rcx, qword [r14 + 0x10]
mov edx, eax
or edx, 1
mov dword [r14 + 8], edx
test rcx, rcx
je 0x730b10
mov r8d, dword [rsp + 0x70]
test r8d, r8d
je 0x730ac8
or eax, 3
mov dword [r14 + 8], eax
mov edx, eax
mov eax, dword [rsp + 0x60]
test eax, eax
jne 0x730ad2
mov rax, qword [r14 + 0x60]
test rax, rax
je 0x730d71
mov rdx, qword [r13]
cmp dword [rdx + 0x80], 4
je 0x73122f
mov r9, qword [r14 + 0x10]
mov ebx, dword [r14 + 0xc]
cmp dword [r14 + 0x40], ebx
je 0x731450
mov r10d, 4
mov r8d, 5
mov ecx, 0xd
mov edx, 4
mov rax, qword [r9]
cmp byte [rax + r10], 0
jns 0x731473
movsxd r8, r8d
lea r10d, [rdx + 2]
cmp byte [rax + r8], 0
jns 0x7314f7
movsxd r10, r10d
lea r8d, [rdx + 3]
cmp byte [rax + r10], 0
jns 0x731473
movsxd r8, r8d
lea r10d, [rdx + 4]
cmp byte [rax + r8], 0
jns 0x7314f7
movsxd r10, r10d
lea r8d, [rdx + 5]
cmp byte [rax + r10], 0
jns 0x731473
movsxd r8, r8d
lea r10d, [rdx + 6]
cmp byte [rax + r8], 0
jns 0x7314f7
movsxd r10, r10d
lea r8d, [rdx + 7]
cmp byte [rax + r10], 0
jns 0x731473
movsxd r8, r8d
cmp byte [rax + r8], 0
jns 0x73176a
movsxd rcx, ecx
mov eax, dword [r9 + 0xc]
mov qword [r14 + 0x20], rcx
cmp dword [r14 + 0x4c], eax
jl 0x731280
mov eax, dword [r13 + 0x3c]
mov rdi, qword [r14]
add ebx, 1
mov dword [rsp + 0x58], eax
test eax, eax
jne 0x731280
movsxd rsi, ebx
xor r12d, r12d
jmp 0x730e99
mov rdx, qword [rax]
movzx eax, byte [rdx]
movzx edx, byte [rdx + 1]
shl eax, 8
add ax, dx
je 0x730e77
mov dword [rsp + 0x58], ebx
mov rax, r12
mov r12, rcx
mov rcx, rax
call fcn.0082d7e0
cmp r15d, ebp
jg 0x731350
mov r15d, dword [r13 + 0x3c]
add ebx, 1
add rsi, 1
test r15d, r15d
jne 0x731350
cmp ebx, dword [rdi + 8]
jg 0x731350
movsxd rdx, dword [rdi]
mov rcx, r13
shl rdx, 0x25
add rdx, rsi
call fcn.00721aa0
mov rcx, rax
test rax, rax
je 0x730e85
mov r15d, dword [rax + 8]
cmp r15d, 3
jle 0x730ece
mov ebp, dword [rax + 0xc]
cmp r15d, ebp
jge 0x730e58
mov dword [r13 + 0x3c], 0x10b
call fcn.0082d7e0
jmp 0x730e85
mov r8, r14
mov rdx, r12
mov rcx, r13
call fcn.00735630
jmp 0x730b60
mov r8d, dword [rsp + 0x128]
mov r11d, dword [rsp + 0xa0]
sub r8d, r15d
cmp r8d, r11d
cmova r8d, r11d
xor eax, eax
test r8d, r8d
je 0x730f52
mov dword [rsp + 0x64], r11d
jmp 0x730f2c
add eax, 1
cmp r8d, eax
je 0x731050
mov r11, qword [rsp + 0x120]
lea r10d, [r15 + rax]
lea ecx, [rax + rdx]
mov r9, r10
movzx r10d, byte [r11 + r10]
cmp byte [rbp + rcx], r10b
je 0x730f20
mov r11d, dword [rsp + 0x64]
mov r15d, r9d
cmp dword [rsp + 0x128], r15d
je 0x731310
cmp r11d, eax
jbe 0x7309e4
mov r11, qword [rsp + 0x120]
lea ecx, [rax + rdx]
mov eax, r15d
movzx eax, byte [r11 + rax]
cmp byte [rbp + rcx], al
ja 0x730c27
cmp r12d, edi
ja 0x7309ed
nop
mov eax, dword [rsp + 0x68]
test eax, eax
jne 0x730fac
jmp 0x731330
mov edi, dword [rax + 0xc]
cmp edi, dword [rax + 8]
jl 0x7313a0
mov rdx, r14
mov rcx, r13
call fcn.007363a0
mov rax, qword [r14 + 0x10]
test rax, rax
jne 0x730fa0
mov eax, dword [r13 + 0x3c]
jmp 0x730d10
mov dword [r13 + 0x3c], 0x10b
mov eax, 0x10b
jmp 0x730d10
and r8d, 0x7f
movzx edx, al
mov eax, 2
shl r8d, 7
or edx, r8d
jmp 0x730a3f
and eax, 0x7f
and edx, 0x1fc07f
shl eax, 7
or edx, eax
mov eax, 3
jmp 0x730a3f
mov dword [rsp + 0xa0], r9d
jmp 0x730c17
mov rax, qword [r13]
cmp dword [rax + 0x5c], 1
je 0x7311e0
lea rax, [0x00735de0]
mov qword [r14 + 0x38], rax
jmp 0x730b26
mov r11d, dword [rsp + 0x64]
add r15d, eax
jmp 0x730f52
mov rax, qword [r13]
lea rcx, str.SELECT_pgno_FROM__q._q_idx_WHERE_segid__AND_term___ORDER_BY_term_DESC_LIMIT_1
mov rdx, qword [rax + 8]
mov r8, qword [rax + 0x10]
call fcn.0082f750
mov esi, dword [r13 + 0x3c]
mov r15, rax
test esi, esi
jne 0x7310c6
test rax, rax
je 0x7312e8
mov rax, qword [r13]
lea rdx, [r13 + 0x68]
mov qword [rsp + 0x30], 0
mov r9d, 0x85
mov qword [rsp + 0x28], rdx
mov r8d, 0xffffffff
mov rdx, r15
mov qword [rsp + 0x20], 0
mov rcx, qword [rax]
call fcn.007dc0c0
mov dword [r13 + 0x3c], eax
mov rcx, r15
call fcn.0082d7e0
mov rsi, qword [r13 + 0x68]
jmp 0x730803
and ecx, 0x7f
shl ecx, 7
or ecx, edx
lea edx, [rax + 2]
mov dword [rsp + 0xa0], ecx
jmp 0x730c17
and esi, 0x7f
shl esi, 7
or esi, eax
lea eax, [rbx + 2]
jmp 0x7309b0
and edx, 0x7f
and r9d, 0x1fc07f
shl edx, 7
or r9d, edx
lea edx, [rax + 3]
mov dword [rsp + 0xa0], r9d
jmp 0x730c17
and eax, 0x7f
and esi, 0x1fc07f
shl eax, 7
or esi, eax
lea eax, [rbx + 3]
jmp 0x7309b0
test rsi, rsi
je 0x731448
mov rax, qword [rsi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x73116b
call qword [0x008693e0]
mov rcx, qword [rsi + 0xa0]
test rcx, rcx
je 0x731290
cmp word [rsi + 0xc0], 0
je 0x731290
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x731412
mov rax, qword [rcx]
mov edi, eax
and eax, 1
mov dword [rsp + 0x60], eax
sar edi, 1
mov rbx, rdi
mov rcx, qword [rsi]
mov edx, dword [rsi + 0x34]
cmp byte [rcx + 0x67], 0
jne 0x7312b9
xor eax, eax
test edx, edx
jne 0x7312b9
mov rcx, qword [rcx + 0x18]
mov dword [rsi + 0x34], eax
test rcx, rcx
je 0x7308c5
call qword [0x008693f0]
jmp 0x7308c5
lea rax, [0x00736580]
mov qword [r14 + 0x38], rax
jmp 0x730b26
call fcn.0084a820
jmp 0x730845
lea rax, [0x009569cc]
mov r9d, 0x163e9
lea r8, str.misuse
mov ecx, 0x15
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.0082f270
jmp 0x7308a7
mov esi, dword [rax + 0x1c]
mov rax, qword [r14]
mov rcx, r13
movsxd rdx, dword [rax]
movsxd rax, esi
mov dword [rsp + 0x58], esi
shl rdx, 0x25
add rdx, rax
call fcn.00721aa0
mov r12, rax
test rax, rax
je 0x731280
mov eax, dword [rax + 8]
cmp eax, 3
jle 0x731269
cmp eax, dword [r12 + 0xc]
jge 0x731359
mov dword [r13 + 0x3c], 0x10b
mov rcx, r12
call fcn.0082d7e0
nop dword [rax]
mov rdx, r14
mov rcx, r13
call fcn.00736a30
jmp 0x730b10
mov rcx, qword [rsi]
xor ebx, ebx
mov dword [rcx + 0x50], 0x19
call fcn.007b2ce0
mov rcx, qword [rsi]
mov dword [rsp + 0x60], 0
mov edx, dword [rsi + 0x34]
cmp byte [rcx + 0x67], 0
je 0x7311b6
call fcn.006dc060
mov rcx, qword [rsi]
jmp 0x7311c0
and ebx, 0x7f
shl ebx, 7
or ebx, edx
mov edx, 2
jmp 0x730987
mov dword [r13 + 0x3c], 7
jmp 0x7310c6
and edx, 0x7f
and ebx, 0x1fc07f
shl edx, 7
or ebx, edx
mov edx, 3
jmp 0x730987
cmp r11d, eax
je 0x730c3b
mov r9d, dword [rsp + 0x68]
test r9d, r9d
jne 0x730c3b
nop word [rax + rax]
mov rcx, qword [r14 + 0x10]
call fcn.0082d7e0
mov qword [r14 + 0x10], 0
mov eax, dword [r13 + 0x3c]
jmp 0x730d10
test r12, r12
je 0x731280
mov rcx, qword [r14 + 0x10]
call fcn.0082d7e0
mov eax, dword [rsp + 0x58]
mov rdx, qword [r12]
mov qword [r14 + 0x10], r12
mov dword [r14 + 0xc], eax
movzx eax, byte [rdx]
movzx ecx, byte [rdx + 1]
shl eax, 8
add eax, ecx
movzx ebx, ax
cmp ebx, dword [r12 + 0xc]
jle 0x7314bf
mov dword [r13 + 0x3c], 0x10b
jmp 0x730b10
mov rbp, qword [rax]
mov ecx, edi
lea rdx, [rsp + 0x9c]
add rcx, rbp
call fcn.007ca410
mov ebx, dword [rsp + 0x9c]
cmp ebx, 3
jbe 0x730fd0
mov rcx, qword [r14 + 0x10]
mov edx, ebx
movsxd r8, dword [rcx + 0xc]
cmp rdx, r8
jge 0x730fd0
lea r8, [rsp + 0xa0]
mov r12d, dword [rcx + 8]
add edi, eax
xor esi, esi
lea rcx, [rbp + rdx]
mov rdx, r8
call fcn.007ca410
add eax, dword [rsp + 0x9c]
mov r11d, dword [rsp + 0xa0]
mov dword [rsp + 0x9c], eax
mov edx, eax
jmp 0x730c3b
test al, 8
je 0x731974
movsd xmm0, qword [rcx]
movsd xmm1, qword [0x00962b38]
comisd xmm1, xmm0
ja 0x731464
comisd xmm0, xmmword [0x00962b40]
ja 0x731706
cvttsd2si rax, xmm0
jmp 0x731198
xor ebx, ebx
jmp 0x7308c5
movsxd r10, dword [r14 + 0x44]
mov rdx, r10
lea ecx, [r10 + 9]
lea r8d, [r10 + 1]
jmp 0x730d99
mov dword [rsp + 0x60], 0
xor ebx, ebx
jmp 0x7311a6
mov ecx, r8d
jmp 0x730e21
mov rcx, qword [rax]
mov ebx, 4
mov eax, 4
lea rdx, [r14 + 0x78]
add rcx, rax
call fcn.007ca200
movzx eax, al
add rax, rbx
mov qword [r14 + 0x20], rax
mov eax, dword [r13 + 0x3c]
test eax, eax
jne 0x730d10
mov rcx, qword [r13]
mov rdx, r14
call fcn.00735950
mov eax, dword [r13 + 0x3c]
jmp 0x730d10
lea r8, [r14 + 0x78]
movzx eax, ax
lea rcx, [rdx + rax]
mov rdx, r8
call fcn.007ca200
movsxd rdx, dword [r12 + 0xc]
movzx eax, al
add eax, ebx
cdqe
mov qword [r14 + 0x20], rax
mov eax, dword [r12 + 8]
cmp edx, eax
jl 0x73150f
add eax, 1
mov dword [r14 + 0x4c], eax
jmp 0x731280
mov ecx, r10d
jmp 0x730e21
lea rax, [0x0072e740]
mov qword [r14 + 0x38], rax
jmp 0x73048c
mov rcx, qword [r12]
lea r8, [rsp + 0xa8]
add rcx, rdx
mov rdx, r8
call fcn.007ca410
mov eax, dword [rsp + 0xa8]
mov dword [r14 + 0x4c], eax
jmp 0x731280
mov ecx, edi
lea rdx, [rsp + 0xa8]
add rcx, rbp
call fcn.007ca410
add ebx, dword [rsp + 0xa8]
add edi, eax
mov dword [r14 + 0x4c], ebx
mov rax, qword [r14 + 0x10]
jmp 0x730cc9
lea rax, [0x0072e5e0]
mov qword [r14 + 0x38], rax
jmp 0x73048c
cmp qword [rsp + 0x120], 0
mov dword [rsp + 0x9c], 0
mov qword [rsp + 0xa0], 0
je 0x73159a
test dil, 8
je 0x731772
lea rdx, [r12 + 0x20]
lea rcx, [r12 + 0x14]
add r12, 0x18
mov r9d, dword [rsp + 0x128]
mov qword [rsp + 0x20], r12
mov r8, qword [rsp + 0x120]
mov qword [rsp + 0xa8], 0
call fcn.00729060
mov rcx, qword [r15 + 0x18]
lea rdx, [rsp + 0xa0]
lea r9, [rsp + 0x9c]
mov dword [r15 + 0x3c], eax
lea r8, [rsp + 0xa8]
call fcn.007ca590
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x731607
call sub.msvcrt.dll_strlen
mov ebx, eax
cmp qword [rsp + 0xa8], 0
je 0x7316cc
mov eax, dword [r15 + 0x3c]
test eax, eax
jne 0x7316cc
mov rcx, qword [rsp + 0x78]
mov edx, 0x10
call fcn.007cc570
mov rsi, rax
test rax, rax
je 0x7316cc
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0x48], ebx
mov qword [rsi], rax
mov r9, qword [rsp + 0xa0]
mov r8d, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x78]
lea r12, [r14 + 0x60]
mov dword [r14 + 0xd0], 0
lea rdx, [r14 + 0xc8]
call fcn.007c7510
mov eax, dword [rsp + 0x9c]
mov rcx, qword [rsi]
lea rdx, [r14 + 0xd8]
mov dword [rsi + 0xc], eax
mov dword [rsi + 8], eax
mov qword [r14 + 0x70], rsi
call fcn.007ca200
movzx eax, al
mov qword [r14 + 0x80], rax
mov eax, dword [rsi + 8]
mov dword [r14 + 0xac], eax
mov eax, dword [rsp + 0x70]
test eax, eax
jne 0x731929
mov ebp, dword [r15 + 0x3c]
test ebp, ebp
jne 0x7316cc
mov rcx, qword [r15]
mov rdx, r12
call fcn.00735950
mov eax, dword [r14 + 0x68]
test al, 2
je 0x73174a
lea rax, [0x00736990]
mov qword [r14 + 0x98], rax
lea rax, [r13 + 0x20]
mov dword [rsp + 0x6c], 1
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x80], rax
ja 0x730722
jmp 0x73050a
mov dword [rsp + 0x60], 1
mov ebx, 0xffffffff
jmp 0x7311a6
mov edx, 0x178
mov ebp, 2
mov ebx, 2
jmp 0x730342
mov r9d, dword [rdx + 0x18]
cmp r9d, 0x64
jle 0x730463
lea rax, [0x0072db90]
mov qword [r14 + 0x38], rax
jmp 0x73048c
mov rax, qword [r15]
cmp dword [rax + 0x5c], 1
je 0x731942
lea rax, [0x00735de0]
mov qword [r14 + 0x98], rax
jmp 0x7316e2
lea ecx, [rdx + 8]
jmp 0x730e21
mov eax, dword [rsp + 0x128]
mov r9d, dword [r12 + 0x14]
sub eax, 1
js 0x73196a
movsxd rcx, dword [rsp + 0x128]
mov rsi, qword [rsp + 0x120]
movsxd rdx, eax
mov eax, eax
add rdx, qword [rsp + 0x120]
lea r10, [rsi + rcx - 2]
sub r10, rax
mov eax, 0xd
movzx r8d, byte [rdx]
lea ecx, [rax*8]
sub rdx, 1
xor ecx, r8d
xor eax, ecx
cmp r10, rdx
jne 0x7317b1
xor edx, edx
div r9d
mov rax, qword [r12 + 0x20]
mov rbp, qword [rax + rdx*8]
test rbp, rbp
je 0x7318f6
movsxd rbx, dword [rsp + 0x128]
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x110], edi
mov edi, dword [rsp + 0x128]
mov r12, rbx
mov rbx, qword [rsp + 0x120]
jmp 0x73181d
mov rbp, qword [rbp]
test rbp, rbp
je 0x7318ef
mov esi, dword [rbp + 0x1c]
lea eax, [rsi + 1]
cmp edi, eax
jne 0x731810
lea rcx, [rbp + 0x30]
mov r8, r12
mov rdx, rbx
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x731810
mov r12, qword [rsp + 0x40]
mov edi, dword [rsp + 0x110]
mov ebx, dword [rbp + 0x18]
call fcn.0082e1a0
test eax, eax
jne 0x731955
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x48], eax
lea eax, [rsi + 0x32]
sub ebx, eax
mov dword [rsp + 0x40], eax
lea ecx, [rbx + 0x1a]
movsxd rcx, ecx
call fcn.007dc490
mov rsi, rax
test rax, rax
je 0x731955
movsxd rdx, dword [rsp + 0x40]
lea r9, [rax + 0x10]
movsxd r8, ebx
mov rcx, r9
mov qword [rsp + 0x50], r9
add rdx, rbp
call sub.msvcrt.dll_memcpy
mov r8d, 0x10
sub r8d, dword [rsp + 0x40]
mov rdx, rbp
movsxd r8, r8d
mov rcx, r12
add r8, rsi
call fcn.00728ee0
mov r9, qword [rsp + 0x50]
mov dword [r15 + 0x3c], 0
add eax, ebx
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x120]
mov qword [rsi], r9
mov qword [rsp + 0xa0], rax
mov r9, rax
or dword [r14 + 0x68], 1
jmp 0x731654
mov edi, dword [rsp + 0x110]
mov dword [r15 + 0x3c], 0
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0xa0], rax
mov eax, dword [r14 + 0x68]
or eax, 1
mov dword [r14 + 0x68], eax
jmp 0x7316d0
mov rcx, qword [rax]
mov rax, rbx
jmp 0x731488
or dword [r14 + 0x68], 2
mov rdx, r12
mov rcx, r15
call fcn.00736a30
mov eax, dword [r14 + 0x68]
jmp 0x7316d0
lea rax, [0x00736580]
mov qword [r14 + 0x98], rax
jmp 0x7316e2
mov dword [rsp + 0x9c], 0
mov dword [r15 + 0x3c], 7
jmp 0x7318fe
mov eax, 0xd
jmp 0x7317ca
test al, 0x12
je 0x731464
cmp qword [rcx + 8], 0
je 0x731464
call fcn.00759640
jmp 0x731198