Function at 0x180034b90
Capabilities:
Get graphical window text

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x5e8]
sub rsp, 0x6e8
lea eax, [r9 - 5]
mov edi, r9d
mov dword [rsp + 0x78], eax
mov r14, r8
mov rsi, rdx
mov r12, rcx
cmp r9d, eax
jbe 0x180035aba
mov ebx, dword [rbp + 0x648]
xor r13d, r13d
mov eax, edi
lea r9, str.Print
mov edx, 0x2d
movabs r10, 0x6666666666666667
sub eax, 0xaf
je 0x180034c44
sub eax, 1
je 0x180034c34
sub eax, 1
je 0x180034c2a
sub eax, 4
je 0x18003514f
cmp eax, 1
jne 0x180035aa8
mov dword [rsp + 0x38], r13d
jmp 0x180035aa8
mov qword [rsp + 0x60], r13
jmp 0x180035aa8
mov qword [0x1800de9f8], 1
jmp 0x180035aa8
mov ecx, 0x73
nop dword [rax]
mov eax, ecx
sub eax, 0x72
je 0x180035ad2
cmp eax, 1
jne 0x180035144
mov eax, dword [rsi]
cmp eax, 5
je 0x1800350d4
cmp eax, 0x112
je 0x180035014
cmp eax, 0x232
je 0x180034ff1
cmp eax, 0x421
je 0x180034f94
mov r8, qword [0x1800b5148]
cmp r8, 0xffffffffffffffff
je 0x180034e66
mov rax, r10
imul qword [0x1800de9f8]
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rax, [rdx + rdx*4]
cmp qword [0x1800de9f8], rax
jne 0x180034e66
cmp r8, 2
jge 0x180034e66
test r8, r8
jne 0x180034cf2
movsd xmm0, qword [str.opera5.ini]
mov eax, dword [0x180095f28]
movsd qword [rsp + 0x68], xmm0
mov dword [rsp + 0x70], eax
jmp 0x180034d38
cmp qword [0x1800b5148], 1
mov eax, dword [str.Print]
mov dword [rsp + 0x68], eax
movzx eax, word [0x180095f30]
mov word [rsp + 0x6c], ax
jne 0x180034e66
mov rcx, r13
lea rdx, [rsp + 0x68]
nop
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r9 + rcx - 1]
jne 0x180034e66
cmp rcx, 6
jne 0x180034d20
mov r15d, 0x32
nop
mov eax, r15d
sub eax, 0x32
je 0x180034e72
cmp eax, 0x5f
jne 0x180034e4e
mov r14, qword [rsp + 0x60]
test r14, r14
je 0x180034e47
mov eax, 0x8d
nop dword [rax + rax]
cmp eax, 0x8d
jne 0x180034e37
mov r8, qword [0x1800b5148]
mov eax, dword [str.Print]
inc r8
mov dword [rsp + 0x68], eax
movzx eax, word [0x180095f30]
mov qword [0x1800b5148], r8
mov word [rsp + 0x6c], ax
sub r8, 1
je 0x180034db3
cmp r8, 1
je 0x180034e0c
jmp 0x180034e32
mov edi, 0x58
cmp edi, 0x58
je 0x180034dd8
cmp edi, 0x2208
je 0x180034dcf
cmp edi, 0x43b8
je 0x180034e32
jmp 0x180034dfe
mov qword [0x1800be698], r14
jmp 0x180034dfe
lea r8, [0x18005f480]
mov qword [0x1800be6a0], r13
mov edx, 8
mov rcx, r14
call qword [sym.imp.USER32.dll_SetWindowLongW]
movsxd rcx, eax
mov qword [0x1800be6d8], rcx
add edi, 0x21b0
cmp edi, 0x6510
jbe 0x180034db8
lea r8, [0x18005f440]
mov edx, 8
mov rcx, r14
call qword [sym.imp.USER32.dll_SetWindowLongW]
movsxd rcx, eax
mov qword [0x1800be6e0], rcx
mov qword [0x1800be6a0], r14
mov eax, 0x8d
add eax, 0xc2
cmp eax, 0x14f
jb 0x180034d70
mov r14, qword [rbp + 0x640]
add r15d, 0x5f
cmp r15d, 0xf0
jb 0x180034d40
mov rsi, qword [rbp + 0x638]
inc qword [0x1800de9f8]
jmp 0x180035120
mov rcx, qword [r14]
mov edx, 3
call qword [sym.imp.USER32.dll_GetWindow]
mov rdi, rax
mov esi, 0xa7
nop dword [rax + rax]
mov eax, esi
sub eax, 0xa7
je 0x180034f3c
cmp eax, 1
jne 0x180034f57
mov rcx, r13
lea rdx, [rbp + 0xa0]
lea rax, str.Print
movzx eax, byte [rax + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x180034eeb
cmp rcx, 6
jne 0x180034eb0
mov eax, dword [str.Print]
mov dword [rsp + 0x68], eax
movzx eax, word [0x180095f30]
mov word [rsp + 0x6c], ax
mov qword [0x1800b5148], 1
mov rcx, qword [rsp + 0x60]
mov edx, 3
call qword [sym.imp.USER32.dll_GetWindow]
mov rdi, rax
test rax, rax
jne 0x180034f57
mov rax, qword [rbp + 0x650]
inc qword [0x1800de9f8]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0x638]
mov r8d, dword [rax]
mov r9, qword [r12]
mov rdx, qword [r14]
mov rcx, qword [0x1800be6d0]
call qword [sym.imp.USER32.dll_CallWindowProcW]
jmp 0x180035abe
mov r8d, 0x100
mov qword [rsp + 0x60], rdi
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetWindowTextW]
inc esi
cmp esi, 0xa9
jb 0x180034e90
lea rax, [rsp + 0x68]
lea r8, [rbp + 0xa0]
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180034f87
inc rax
test ecx, ecx
jne 0x180034f74
test edx, edx
jne 0x180034e83
jmp 0x180034e4e
mov rax, qword [rbp + 0x650]
mov rcx, qword [rax]
lea rax, [rcx - 0x201]
cmp rax, 5
ja 0x180035120
bt rdx, rax
jae 0x180035120
mov rax, qword [r12]
lea r9, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
mov rax, qword [r14]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x30], 1
jmp 0x180035111
cmp qword [0x1800be740], 0x10
jne 0x180035120
mov qword [0x1800be740], r13
mov qword [rsp + 0x30], 0x232
jmp 0x1800350ea
cmp qword [0x1800be6f0], 0
je 0x180035120
mov rdi, qword [r12]
and edi, 0xfff0
cmp rdi, 0xf030
je 0x18003504b
cmp rdi, 0xf000
je 0x18003504b
cmp rdi, 0xf120
jne 0x180035120
mov rcx, qword [0x1800be6a8]
call qword [sym.imp.USER32.dll_GetTopWindow]
mov rcx, rax
mov qword [rsp + 0x60], rax
call qword [sym.imp.USER32.dll_IsZoomed]
test eax, eax
je 0x1800350cd
sub rdi, 0xf000
je 0x1800350a3
sub rdi, 0x30
je 0x180035096
cmp rdi, 0xf0
jne 0x180035120
mov qword [0x1800be740], 0xd
jmp 0x180035120
mov qword [0x1800be740], 0xc
jmp 0x180035120
mov rcx, qword [0x1800be690]
mov qword [0x1800be740], 0x10
call qword [sym.imp.USER32.dll_IsZoomed]
neg eax
sbb rcx, rcx
add rcx, 0xf
mov qword [0x1800be748], rcx
jmp 0x180035120
mov qword [rsp + 0x30], rdi
jmp 0x1800350ea
mov rcx, qword [0x1800be740]
lea rax, [rcx - 0xc]
cmp rax, 1
ja 0x180035120
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x50], r13
lea rax, [rsp + 0x30]
mov qword [rsp + 0x48], r13
lea r9, [rsp + 0x50]
mov qword [rsp + 0x40], 2
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov ecx, 0x87
mov qword [rsp + 0x20], rax
call fcn.18002aac0
mov ecx, 0x73
lea r9, str.Print
mov edi, 0xaf
movabs r10, 0x6666666666666667
mov dword [rbp + 0x648], edi
lea edx, [rcx - 0x46]
dec ecx
cmp ecx, 0x71
ja 0x180034c50
mov r13d, dword [rsi]
xor r12d, r12d
test r13d, r13d
js 0x180035a9e
xor r9d, r9d
mov dword [rsp + 0x20], 0x74
xor r8d, r8d
lea rcx, [rbp - 0x70]
mov rdx, r14
call fcn.1800069a0
lea rcx, [rbp + 0x1a0]
lea edx, [r12 + 2]
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180035190
mov eax, dword [rax]
mov dword [rcx], eax
cmp byte [rbp + 0x1a0], r12b
je 0x180035a9e
mov eax, dword [rsi]
cmp dword [r14 + 2], eax
je 0x180035a9e
cmp qword [r14 + 6], r12
je 0x180035a9e
mov r15d, 0xe8
cmp r15d, 0xe8
je 0x1800355fc
cmp r15d, 0x18e
je 0x1800355ec
cmp r15d, 0x234
jne 0x180035a84
mov rax, qword [r14 + 6]
lea r8, [rsp + 0x30]
mov edi, dword [rsp + 0x38]
lea rcx, [rsp + 0x40]
mov edx, 0x7b
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x40], edi
call fcn.180037fc0
test al, al
je 0x1800355e1
cmp r12d, edi
jge 0x1800355e1
cmp byte [r14], 0xd
jne 0x18003551b
mov r14d, 0xc
nop dword [rax]
cmp r14d, 0xc
je 0x1800353b0
cmp r14d, 0xa6
je 0x1800352d4
cmp r14d, 0x140
jne 0x1800354f5
mov rdi, qword [rbp + 0x640]
lea r9d, [r14 - 0x79]
xor r8d, r8d
lea rdx, [rsp + 0x30]
xor ecx, ecx
mov rax, qword [rdi + 6]
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.180025990
jmp 0x1800354f5
mov rax, qword [rbp + 0x640]
mov edi, dword [rax + 2]
inc edi
cmp edi, dword [rsi]
jg 0x1800354f5
movsxd rsi, edi
shl rsi, 4
add rsi, qword [rbp - 0x80]
nop dword [rax]
nop word [rax + rax]
xor eax, eax
mov dword [rsp + 0x40], ebx
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x40]
xor edx, edx
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x70]
lea r8d, [rax + 0x6c]
call fcn.18001aec0
lea rcx, [rbp + 0x4d0]
mov edx, 2
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180035330
mov rax, qword [rax]
inc edi
mov qword [rcx], rax
movups xmm0, xmmword [rbp + 0x4d0]
mov rax, qword [rbp + 0x638]
movups xmmword [rsi], xmm0
add rsi, 0x10
cmp edi, dword [rax]
jle 0x180035300
mov rsi, rax
jmp 0x1800354f5
mov rdi, qword [rbp + 0x640]
lea rcx, [rbp + 0x2b0]
mov rax, rdi
mov edx, 2
nop word [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x1800353d0
mov eax, dword [rax]
lea r9d, [rdx + 0x27]
mov dword [rcx], eax
lea r8, [rbp + 0x2b0]
xor eax, eax
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x20], rax
call fcn.1800254b0
lea rcx, [rbp + 0x3c0]
mov edx, 2
lea rax, [rbp - 0x70]
nop dword [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180035460
mov eax, dword [rax]
lea r8, [rbp + 0x3c0]
mov dword [rcx], eax
xor r9d, r9d
xor ecx, ecx
mov dword [rsp + 0x20], 0x51
call fcn.180032ac0
mov rbx, rax
lea rdx, [rsp + 0x30]
mov rax, qword [rdi + 6]
xor r9d, r9d
mov r8d, 0x8c
mov qword [rsp + 0x30], rax
xor ecx, ecx
call fcn.18002ca50
mov qword [rbp - 0x80], rax
add r14d, 0x9a
cmp r14d, 0x1da
jb 0x180035280
mov r14, qword [rbp + 0x640]
mov ecx, dword [rsi]
mov dword [r14 + 2], ecx
jmp 0x180035a84
mov esi, 0xc1
mov eax, esi
sub eax, 0xc1
je 0x18003559c
sub eax, 0x53
je 0x180035592
cmp eax, 0x53
jne 0x1800355cb
mov rax, qword [rsp + 0x58]
xor edx, edx
mov rdi, qword [rbp - 0x78]
sub rdi, rax
cmp rax, qword [rbp - 0x78]
cmova rdi, rdx
test rdi, rdi
je 0x180035564
mov r8, rdi
mov rcx, rax
call fcn.18006e5e0
add qword [rsp + 0x58], rdi
xor edx, edx
mov rax, qword [r14 + 6]
mov r9d, 0xc7
mov qword [rsp + 0x28], rdx
xor r8d, r8d
mov qword [rsp + 0x20], rdx
xor ecx, ecx
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], rax
call fcn.180025990
mov edi, dword [rsp + 0x38]
jmp 0x1800355cb
movsxd rax, r12d
add qword [rsp + 0x58], rax
jmp 0x1800355cb
mov rax, qword [r14 + 6]
lea rdx, [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov r8d, 0x8c
xor ecx, ecx
call fcn.18002ca50
mov qword [rsp + 0x58], rax
movsxd rax, edi
add rax, qword [rsp + 0x58]
mov qword [rbp - 0x78], rax
add esi, 0x53
cmp esi, 0x1ba
jb 0x180035520
mov rsi, qword [rbp + 0x638]
mov ecx, dword [rsi]
mov dword [r14 + 2], ecx
jmp 0x180035a84
mov edi, 0xb5
mov dword [rbp + 0x648], edi
jmp 0x180035a8a
movsx eax, byte [r14]
mov r15d, dword [r14 + 2]
add eax, 0xfffffff3
cmp eax, 0x15
ja case.0x180035623.18
lea rdx, [0x180000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x35aec]
add rcx, rdx
jmp rcx
mov esi, 0x71
nop word [rax + rax]
cmp esi, 0x71
je 0x180035666
cmp esi, 0x5613
je 0x18003564e
cmp esi, 0xabb5
je case.0x180035623.18
jmp 0x18003570e
lea eax, [r13 + 1]
shl eax, 4
lea r12d, [r15 + 1]
mov dword [rsp + 0x38], eax
shl r12d, 4
jmp 0x18003570e
mov rdi, qword [rbp + 0x638]
mov eax, dword [r14 + 2]
cmp dword [rdi], eax
jge 0x18003570e
mov rax, qword [r14 + 6]
lea rdx, [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov r8d, 0x8c
xor ecx, ecx
call fcn.18002ca50
mov edi, dword [rdi]
mov rcx, rax
inc edi
mov qword [rbp - 0x80], rax
cmp edi, dword [r14 + 2]
jg 0x1800356e4
nop dword [rax + rax]
movsxd rax, edi
xor r9d, r9d
shl rax, 4
xor r8d, r8d
add rax, rcx
xor edx, edx
mov qword [rsp + 0x28], rax
mov ecx, 0xd2
xor eax, eax
mov qword [rsp + 0x20], rax
call fcn.1800501a0
mov rcx, qword [rbp - 0x80]
inc edi
cmp edi, dword [r14 + 2]
jle 0x1800356b0
mov rax, qword [r14 + 6]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], rax
mov r9d, 0xc7
xor eax, eax
xor r8d, r8d
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.180025990
add esi, 0x55a2
cmp esi, 0x100e6
jbe 0x180035630
lea eax, [r13*8 + 8]
mov dword [rsp + 0x38], eax
lea r12d, [r15*8 + 8]
jmp case.0x180035623.18
lea eax, [r13*2 + 2]
mov dword [rsp + 0x38], eax
lea r12d, [r15*2 + 2]
jmp case.0x180035623.18
lea eax, [r13*4 + 4]
mov dword [rsp + 0x38], eax
lea r12d, [r15*4 + 4]
jmp case.0x180035623.18
lea eax, [r13 + 1]
lea eax, [rax + rax*2]
add eax, eax
mov dword [rsp + 0x38], eax
lea eax, [r15 + 1]
lea r12d, [rax + rax*2]
add r12d, r12d
jmp case.0x180035623.18
mov eax, 0x5f
nop dword [rax]
cmp eax, 0x5f
je 0x1800359ac
add eax, 0x5e
cmp eax, 0xbd
jb 0x180035790
mov r14d, 0xbf
nop dword [rax]
mov eax, r14d
sub eax, 0xbe
je case.0x180035623.18
cmp eax, 1
jne 0x18003588f
mov r12, qword [rbp + 0x640]
mov eax, dword [r12 + 2]
cmp dword [rsi], eax
jge 0x180035875
mov rax, qword [r12 + 6]
lea rdx, [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov r8d, 0x8c
xor ecx, ecx
call fcn.18002ca50
mov edi, dword [rsi]
inc edi
cmp edi, dword [r12 + 2]
jg 0x18003584a
movsxd rcx, edi
lea rsi, [rax + rcx*8]
nop dword [rax]
mov rax, qword [rsi]
xor r9d, r9d
xor edx, edx
mov rcx, qword [rax + 4]
xor eax, eax
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r8d, [rax + 0x5b]
call fcn.180008760
inc edi
lea rsi, [rsi + 8]
cmp edi, dword [r12 + 2]
jle 0x180035810
mov rsi, qword [rbp + 0x638]
mov rax, qword [r12 + 6]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], rax
mov r9d, 0xc7
xor eax, eax
xor r8d, r8d
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.180025990
lea eax, [r13 + 1]
lea eax, [rax + rax*2]
shl eax, 2
mov dword [rsp + 0x38], eax
lea eax, [r15 + 1]
lea r12d, [rax + rax*2]
shl r12d, 2
dec r14d
cmp r14d, 0xbd
ja 0x1800357b0
mov r14d, 0x65
nop word [rax + rax]
mov eax, r14d
sub eax, 0x64
je case.0x180035623.18
cmp eax, 1
jne 0x180035987
mov r12, qword [rbp + 0x640]
mov eax, dword [r12 + 2]
cmp dword [rsi], eax
jge 0x18003596d
mov rax, qword [r12 + 6]
lea rdx, [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov r8d, 0x8c
xor ecx, ecx
call fcn.18002ca50
mov rsi, rax
mov rax, qword [rbp + 0x638]
mov edi, dword [rax]
inc edi
cmp edi, dword [r12 + 2]
jg 0x18003593b
nop dword [rax]
movsxd rcx, edi
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8d, 0x88
lea rdx, [rcx + rcx*4]
lea rcx, [rsi + rdx*4]
xor edx, edx
call fcn.180008760
inc edi
cmp edi, dword [r12 + 2]
jle 0x180035910
mov rax, qword [r12 + 6]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], rax
mov r9d, 0xc7
xor eax, eax
xor r8d, r8d
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.180025990
mov rsi, qword [rbp + 0x638]
lea eax, [r13 + 1]
lea eax, [rax + rax*4]
shl eax, 2
mov dword [rsp + 0x38], eax
lea eax, [r15 + 1]
lea r12d, [rax + rax*4]
shl r12d, 2
dec r14d
cmp r14d, 0x63
ja 0x1800358b0
lea eax, [r13 + 1]
imul eax, eax, 0x2a
mov dword [rsp + 0x38], eax
lea eax, [r15 + 1]
imul r12d, eax, 0x2a
jmp case.0x180035623.18
cmp dword [rsi], r15d
jge case.0x180035623.14
mov rax, qword [r14 + 6]
lea rdx, [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov r8d, 0x8c
xor ecx, ecx
call fcn.18002ca50
mov edi, dword [rsi]
xor r12d, r12d
inc edi
cmp edi, dword [r14 + 2]
jg 0x180035a22
movsxd rcx, edi
lea rsi, [rax + rcx*8]
nop word [rax + rax]
mov rax, qword [rsi]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x28], r12
xor r8d, r8d
mov edx, 0xed
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov qword [rsp + 0x20], r12
call fcn.180037810
inc edi
lea rsi, [rsi + 8]
cmp edi, dword [r14 + 2]
jle 0x1800359f0
mov rax, qword [r14 + 6]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x28], r12
mov r9d, 0xc7
xor r8d, r8d
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov qword [rsp + 0x20], r12
call fcn.180025990
jmp case.0x180035623.14
lea eax, [r13 + 8]
cdq
and edx, 7
add eax, edx
sar eax, 3
mov dword [rsp + 0x38], eax
lea eax, [r15 + 8]
cdq
and edx, 7
lea r12d, [rdx + rax]
sar r12d, 3
mov r14, qword [rbp + 0x640]
mov r15d, 0xe8
mov rsi, qword [rbp + 0x638]
mov edi, dword [rbp + 0x648]
add r15d, 0xa6
cmp r15d, 0x2da
jb 0x180035210
mov r12, qword [rbp + 0x630]
xor r13d, r13d
dec edi
mov dword [rbp + 0x648], edi
cmp edi, dword [rsp + 0x78]
ja 0x180034be5
mov rax, qword [rbp - 0x78]
add rsp, 0x6e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rax, qword [rbp + 0x650]
mov r8d, dword [rsi]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
jmp 0x180034f23