Function at 0x1800efb00
Capabilities:
Hash data with md5

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r14
sub rsp, 0xe8
mov rdi, rcx
mov rbp, r9
mov rcx, qword [rcx]
mov rsi, r8
mov r14, rdx
cmp dword [rcx], 1
je 0x1800efb41
mov eax, 0xd
add rsp, 0xe8
pop r14
pop rdi
pop rsi
pop rbp
ret
cmp dword [rsp + 0x148], 0
je 0x1800efb5d
mov eax, 2
add rsp, 0xe8
pop r14
pop rdi
pop rsi
pop rbp
ret
test r8, r8
je 0x1800f0acd
test r9, r9
je 0x1800efb7a
cmp qword [rsp + 0x130], 0
je 0x1800f0acd
mov edx, dword [rcx + 0x18]
lea eax, [rdx - 1]
cmp eax, 7
ja 0x1800f0abb
mov qword [rsp + 0xe0], r12
xor r12d, r12d
cmp edx, 2
je 0x1800efba6
mov dword [rcx + 0x10], r12d
mov rax, qword [rdi]
mov dword [rax + 0x14], r12d
jmp 0x1800efbb0
cmp dword [rcx + 0x10], r12d
jne 0x1800efbb0
mov dword [rcx + 0x14], r12d
mov rcx, qword [rdi]
mov eax, dword [rcx + 0x1c]
sub eax, 4
cmp eax, 0x1c
ja 0x1800f0ab1
cmp dword [rcx + 0x20], 0xfffff
jbe 0x1800efbd5
mov eax, 6
jmp 0x1800f043b
mov r9d, 0x480
cmp dword [rcx + 0x24], r12d
jne 0x1800efbf4
cmp dword [rcx + 0x22c], r12d
mov eax, 0x1000
cmove eax, r9d
mov dword [rcx + 0x24], eax
mov rcx, qword [rdi]
mov edx, dword [rcx + 0x24]
lea eax, [rdx - 0x10]
cmp eax, 0xffef
ja 0x1800f0aa7
mov eax, dword [rcx + 0x22c]
cmp eax, 0x20
jbe 0x1800efc1d
mov eax, 8
jmp 0x1800f043b
cmp edx, eax
jae 0x1800efc2b
mov eax, 0xa
jmp 0x1800f043b
mov eax, dword [rcx + 0x230]
test eax, eax
jne 0x1800efd09
mov r8d, dword [rcx + 0x1c]
cmp r8d, 0x10
jae 0x1800efc61
shr r8d, 1
mov eax, 5
add r8d, 2
cmp r8d, eax
cmova eax, r8d
mov dword [rcx + 0x230], eax
jmp 0x1800efd15
jne 0x1800efce1
cmp edx, 0xc0
ja 0x1800efc7a
mov dword [rcx + 0x230], 7
jmp 0x1800efd15
cmp edx, 0x180
ja 0x1800efc91
mov dword [rcx + 0x230], 8
jmp 0x1800efd15
cmp edx, 0x240
ja 0x1800efca5
mov dword [rcx + 0x230], 9
jmp 0x1800efd15
cmp edx, r9d
ja 0x1800efcb6
mov dword [rcx + 0x230], 0xa
jmp 0x1800efd15
cmp edx, 0x900
ja 0x1800efcca
mov dword [rcx + 0x230], 0xb
jmp 0x1800efd15
cmp edx, 0x1200
mov eax, r12d
seta al
add eax, 0xc
mov dword [rcx + 0x230], eax
jmp 0x1800efd15
cmp edx, 0x180
ja 0x1800efcf5
mov dword [rcx + 0x230], 0xd
jmp 0x1800efd15
cmp edx, r9d
mov eax, r12d
seta al
add eax, 0xe
mov dword [rcx + 0x230], eax
jmp 0x1800efd15
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x1800f0a9d
mov rcx, qword [rdi]
cmp dword [rcx + 8], r12d
je 0x1800efdab
mov eax, dword [rcx + 0x24]
cmp eax, 0x4000
ja 0x1800efda1
cmp dword [rcx + 0x20], 0xbb80
ja 0x1800efd3c
cmp eax, 0x1200
ja 0x1800efda1
mov ecx, dword [rcx + 0x20]
cmp ecx, 0x9ffff
ja 0x1800efda1
cmp ecx, 0x10000
jb 0x1800efd62
mov eax, 0xcccccccd
mul ecx
shr edx, 3
lea eax, [rdx + rdx*4]
add eax, eax
cmp ecx, eax
jne 0x1800efda1
mov rcx, qword [rdi]
mov eax, dword [rcx + 0x1c]
cmp eax, 0x20
ja 0x1800efda1
movabs rdx, 0x101111100
bt rdx, rax
jae 0x1800efda1
cmp dword [rcx + 0x244], 8
ja 0x1800efda1
cmp dword [rcx + 0x20], 0xbb80
ja 0x1800efdab
cmp dword [rcx + 0x24], 0x1200
ja 0x1800efda1
cmp dword [rcx + 0x22c], 0xc
jbe 0x1800efdab
mov eax, 0xb
jmp 0x1800f043b
mov rax, qword [rdi]
mov qword [rsp + 0x110], rbx
cmp dword [rax + 0x244], 0x10
jb 0x1800efdc9
mov dword [rax + 0x244], 0xf
mov rax, qword [rdi]
mov ecx, dword [rax + 0x244]
cmp dword [rax + 0x240], ecx
jb 0x1800efde0
mov dword [rax + 0x240], ecx
mov r8, qword [rdi]
mov r9, qword [r8 + 0x260]
test r9, r9
je 0x1800efe28
mov r8d, dword [r8 + 0x268]
test r8d, r8d
je 0x1800efe28
mov ecx, r12d
nop
mov eax, ecx
mov rdx, qword [r9 + rax*8]
test rdx, rdx
je 0x1800efe10
cmp dword [rdx], 3
je 0x1800efe19
inc ecx
cmp ecx, r8d
jb 0x1800efe00
jmp 0x1800efe28
mov rax, qword [rdi + 8]
lea rcx, [rdx + 0x10]
mov qword [rax + 0x2b48], rcx
mov rax, qword [rdi]
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xd0], r15
mov rbx, qword [rax + 0x260]
test rbx, rbx
jne 0x1800efe5c
cmp dword [rax + 0x268], r12d
ja 0x1800effd3
mov r13d, r12d
jmp 0x1800efff8
xor r14d, r14d
xor ebp, ebp
mov r15d, r12d
mov r13d, r12d
cmp dword [rax + 0x268], ebp
jbe 0x1800effe8
mov rbx, qword [rbx]
mov eax, dword [rbx]
test eax, eax
je 0x1800effd3
cmp eax, 3
jne 0x1800efefc
test r15d, r15d
jne 0x1800effd3
mov r11d, dword [rbx + 0x10]
mov r15d, 1
lea rax, [r11 + r11*8]
add rax, rax
cmp rax, 0x1000000
jae 0x1800effd3
test r11d, r11d
je 0x1800effb1
xor edx, edx
nop word [rax + rax]
mov eax, edx
inc edx
mov r8d, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x18]
mov r10, qword [rax + rcx*8]
cmp edx, r11d
jae 0x1800effb1
lea rcx, [rdx + rdx*2]
mov edx, r8d
mov r9, qword [rax + rcx*8]
cmp r9, 0xffffffffffffffff
je 0x1800efec0
cmp r9, r10
ja 0x1800efec0
mov eax, 0xc
jmp 0x1800f0423
cmp eax, 4
jne 0x1800eff15
test r13d, r13d
jne 0x1800effd3
mov r13d, 1
jmp 0x1800effb1
cmp eax, 5
jne 0x1800eff36
mov edx, dword [rbx + 0xa0]
lea rcx, [rbx + 0x10]
xor r8d, r8d
call fcn.18010a190
test eax, eax
je 0x1800effd3
jmp 0x1800effb1
cmp eax, 6
jne 0x1800effb1
xor edx, edx
lea rcx, [rbx + 0x10]
call fcn.18010a480
test eax, eax
je 0x1800effd3
mov eax, dword [rbx + 0x10]
cmp eax, 1
jne 0x1800effa1
test r12d, r12d
jne 0x1800effd3
mov rsi, qword [rbx + 0x18]
lea rdx, str.image_png
mov rcx, rsi
mov r12d, eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x1800eff93
xor ecx, ecx
lea rdx, [0x180171b1c]
nop
movzx eax, byte [rsi + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x1800effd3
cmp rcx, 4
jne 0x1800eff80
cmp dword [rbx + 0x28], 0x20
jne 0x1800effd3
cmp dword [rbx + 0x2c], 0x20
jne 0x1800effd3
jmp 0x1800effb1
cmp eax, 2
jne 0x1800effb1
test r14d, r14d
jne 0x1800effd3
mov r14d, 1
mov rax, qword [rdi]
inc ebp
cmp ebp, dword [rax + 0x268]
jae 0x1800effdd
mov rax, qword [rax + 0x260]
mov rbx, qword [rax + rbp*8]
mov eax, dword [rbx]
test eax, eax
jne 0x1800efe80
mov eax, 0xc
jmp 0x1800f0423
mov rsi, qword [rsp + 0x120]
xor r12d, r12d
mov r14, qword [rsp + 0x118]
mov rbp, qword [rsp + 0x128]
mov rax, qword [rdi + 8]
mov edx, r12d
mov dword [rax], r12d
mov rax, qword [rdi]
cmp dword [rax + 0x18], 0
jbe 0x1800f0046
nop dword [rax + rax]
mov rax, qword [rdi + 8]
mov ecx, edx
inc edx
mov qword [rax + rcx*8 + 8], r12
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8 + 0x2cd0], r12
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8 + 0x60], r12
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8 + 0x2d28], r12
mov rax, qword [rdi]
cmp edx, dword [rax + 0x18]
jb 0x1800f0010
mov rax, qword [rdi + 8]
mov edx, r12d
mov qword [rax + 0x48], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2d10], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0xa0], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2d68], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x50], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2d18], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0xa8], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2d70], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x58], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2d20], r12
mov rax, qword [rdi]
cmp dword [rax + 0x28], 0
jbe 0x1800f00e4
nop word [rax + rax]
mov rax, qword [rdi + 8]
mov ecx, edx
inc edx
mov qword [rax + rcx*8 + 0xb0], r12
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8 + 0x2d78], r12
mov rax, qword [rdi]
cmp edx, dword [rax + 0x28]
jb 0x1800f00c0
mov rax, qword [rdi + 8]
mov r9d, r12d
mov qword [rax + 0x1b0], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2e78], r12
mov rax, qword [rdi]
cmp dword [rax + 0x18], 0
jbe 0x1800f015e
nop word [rax + rax]
mov rax, qword [rdi + 8]
mov r8d, r9d
inc r9d
lea rdx, [r8 + 0x1e]
add rdx, rdx
lea rcx, [r8 + 0x2e8]
add rcx, rcx
mov qword [rax + rdx*8], r12
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8], r12
mov rax, qword [rdi + 8]
mov qword [rax + rdx*8 + 8], r12
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8 + 8], r12
mov rax, qword [rdi + 8]
mov dword [rax + r8*4 + 0x2a20], r12d
mov rax, qword [rdi]
cmp r9d, dword [rax + 0x18]
jb 0x1800f0110
mov edx, 0x2a40
mov ecx, 0x2f00
mov r8d, 2
nop
mov rax, qword [rdi + 8]
lea rdx, [rdx + 4]
lea rcx, [rcx + 0x10]
mov qword [rcx + rax - 0x2cb0], r12
mov rax, qword [rdi + 8]
mov qword [rcx + rax - 0x10], r12
mov rax, qword [rdi + 8]
mov qword [rcx + rax - 0x2ca8], r12
mov rax, qword [rdi + 8]
mov qword [rcx + rax - 8], r12
mov rax, qword [rdi + 8]
mov dword [rdx + rax - 4], r12d
sub r8, 1
jne 0x1800f0170
mov rax, qword [rdi + 8]
xorps xmm1, xmm1
xorps xmm0, xmm0
mov qword [rax + 0x2a70], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2f20], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2a78], r12
mov rax, qword [rdi + 8]
mov qword [rax + 0x2f28], r12
mov rcx, qword [rdi]
mov eax, dword [rcx + 0x20]
cvtsi2sd xmm1, rax
mov eax, dword [rcx + 0x24]
cvtsi2sd xmm0, rax
mov rax, qword [rdi + 8]
mulsd xmm1, qword [0x180216818]
divsd xmm1, xmm0
addsd xmm1, qword [0x180171d70]
cvttsd2si rcx, xmm1
mov dword [rax + 0x2a88], ecx
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2a88], r8d
jne 0x1800f0230
mov dword [rax + 0x2a88], 1
mov rax, qword [rdi + 8]
mov dword [rax + 0x2a8c], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x2b50], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x2b54], r12d
mov rcx, qword [rdi + 8]
add rcx, 0x2bc0
call fcn.1800c4d60
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2c40], 0
je 0x1800f0275
mov dword [rax + 0x2bd0], r12d
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2c44], 0
je 0x1800f0289
mov dword [rax + 0x2bd8], r12d
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2c48], 0
je 0x1800f029d
mov dword [rax + 0x2be0], r12d
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2c4c], 0
je 0x1800f02b1
mov dword [rax + 0x2be4], r12d
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2c50], 0
je 0x1800f02c5
mov dword [rax + 0x2be8], r12d
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2c54], 0
je 0x1800f02d9
mov dword [rax + 0x2bf0], r12d
mov rax, qword [rdi + 8]
cmp dword [rax + 0x2c58], 0
je 0x1800f02ed
mov dword [rax + 0x2bf4], r12d
mov rax, qword [rdi + 8]
lea rdx, [0x1800c8220]
lea rcx, [0x1800c72d0]
mov qword [rax + 0x2c20], rcx
lea rcx, [0x1800f68d0]
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c00], rcx
lea rcx, [0x1800c4e40]
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c08], rcx
lea rcx, [0x1800c5a90]
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c10], rcx
lea rcx, [0x1800c5110]
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c18], rcx
lea rcx, [0x1800ca0c0]
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c28], rdx
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c30], rcx
mov rax, qword [rdi + 8]
mov rcx, qword [rsp + 0x130]
mov qword [rax + 0x2c38], rdx
mov rax, qword [rdi]
mov dword [rax], r12d
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c70], r14
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c88], rsi
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c78], rbp
mov rax, qword [rdi + 8]
mov qword [rax + 0x2c80], rcx
mov rcx, qword [rdi + 8]
mov rax, qword [rsp + 0x138]
mov qword [rcx + 0x2c90], rax
mov rcx, qword [rdi + 8]
mov rax, qword [rsp + 0x140]
mov qword [rcx + 0x2ca0], rax
mov rcx, rdi
mov rdx, qword [rdi]
mov edx, dword [rdx + 0x24]
call fcn.1800fe630
test eax, eax
je 0x1800f041e
mov rcx, qword [rdi + 8]
mov rbx, qword [rcx + 0x2a80]
mov ecx, 0x8000
mov qword [rbx + 0x10], 0
mov dword [rbx + 0xc], 0x2000
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rbx], rax
mov rcx, qword [rdi]
test rax, rax
jne 0x1800f0450
mov dword [rcx], 8
mov eax, 1
mov r13, qword [rsp + 0xd8]
mov r15, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0x110]
mov r12, qword [rsp + 0xe0]
add rsp, 0xe8
pop r14
pop rdi
pop rsi
pop rbp
ret
cmp dword [rcx + 4], 0
je 0x1800f06ac
mov rax, qword [rdi + 8]
mov ebx, r12d
mov ecx, dword [rcx + 0x24]
inc ecx
mov dword [rax + 0x3fb0], ecx
mov rax, qword [rdi]
cmp dword [rax + 0x18], 0
jbe 0x1800f04de
nop word [rax + rax]
mov rax, qword [rdi + 8]
mov ecx, dword [rax + 0x3fb0]
test rcx, rcx
jne 0x1800f0496
mov ecx, 1
jmp 0x1800f04b4
xor edx, edx
mov rax, 0xffffffffffffffff
div rcx
cmp rax, 4
jb 0x1800f0597
lea rcx, [rcx*4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rdx, rax
mov ecx, ebx
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8 + 0x3f70], rdx
mov rax, qword [rdi]
test rdx, rdx
je 0x1800f05a8
inc ebx
cmp ebx, dword [rax + 0x18]
jb 0x1800f0480
mov rax, qword [rdi + 8]
mov dword [rax + 0x3fb4], r12d
mov rbx, qword [rdi + 8]
cmp qword [rbx + 0x3f60], 0
jne 0x1800f0519
call fcn.18010ae50
mov rcx, qword [rdi + 8]
mov qword [rcx + 0x3f60], rax
mov rbx, qword [rdi + 8]
cmp qword [rbx + 0x3f60], 0
je 0x1800f069e
mov rbx, qword [rbx + 0x3f60]
mov rax, qword [rbx]
cmp dword [rax], 9
jne 0x1800f069e
mov rcx, qword [rbx + 8]
add rcx, 0x137c
call fcn.1800c4d60
mov rax, qword [rbx + 8]
lea rdx, [0x1800c3900]
mov ecx, 0x2000
mov qword [rax + 0x22e0], rdx
mov rax, qword [rbx + 8]
mov rsi, qword [rax + 0x58]
mov qword [rsi + 0xc], 0
mov qword [rsi + 0x14], 0
mov dword [rsi + 8], 0x800
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsi], rax
test rax, rax
jne 0x1800f05b3
mov rax, qword [rbx]
mov dword [rax], 8
mov rax, qword [rdi]
mov dword [rax], 3
jmp 0x1800f041e
mov rax, qword [rdi + 8]
mov ecx, ebx
mov qword [rax + rcx*8 + 0x3f70], r12
mov rax, qword [rdi]
mov dword [rax], 8
jmp 0x1800f041e
mov qword [rsi + 0x40], rbx
lea rax, [0x1800fab70]
mov qword [rsi + 0x38], rax
lea rcx, [0x180102ea0]
mov dword [rsi + 0x28], r12d
mov qword [rsi + 0x2c], 0xffffffffffffffff
mov rax, qword [rbx + 8]
mov qword [rax + 8], rcx
lea rcx, [0x180102f50]
mov rax, qword [rbx + 8]
mov qword [rax + 0x10], r12
mov rax, qword [rbx + 8]
mov qword [rax + 0x18], r12
mov rax, qword [rbx + 8]
mov qword [rax + 0x20], r12
mov rax, qword [rbx + 8]
mov qword [rax + 0x28], r12
mov rax, qword [rbx + 8]
mov qword [rax + 0x30], rcx
lea rcx, [fcn.180015010]
mov rax, qword [rbx + 8]
mov qword [rax + 0x38], rcx
lea rcx, [0x180102e90]
mov rax, qword [rbx + 8]
mov qword [rax + 0x40], rcx
mov rcx, rbx
mov rax, qword [rbx + 8]
mov qword [rax + 0x48], rdi
mov rax, qword [rbx + 8]
mov dword [rax + 0x1bc], r12d
mov rax, qword [rbx + 8]
mov dword [rax + 0x1b8], r12d
mov rax, qword [rbx + 8]
mov qword [rax + 0x1c0], r12
mov rax, qword [rbx + 8]
mov dword [rax + 0x1c8], r12d
mov rax, qword [rbx + 8]
mov dword [rax + 0x1378], r12d
mov rax, qword [rbx]
mov rdx, qword [rbx + 8]
mov eax, dword [rax + 0x1c]
mov dword [rdx + 0x1400], eax
mov rax, qword [rbx + 8]
mov dword [rax + 0x1408], r12d
mov rax, qword [rbx + 8]
mov dword [rax + 0x1404], 1
call fcn.18010b230
test eax, eax
jne 0x1800f06ac
mov rax, qword [rdi]
mov dword [rax], 3
jmp 0x1800f041e
mov rax, qword [rdi + 8]
mov qword [rax + 0x3fc8], r12
mov rax, qword [rdi + 8]
mov dword [rax + 0x3fd0], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x3fd4], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x3fd8], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x3fdc], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x3fe0], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x2ca8], r12d
mov rax, qword [rdi + 8]
mov qword [rax + 0x2cc0], r12
mov rax, qword [rdi]
mov qword [rax + 0x270], r12
mov rax, qword [rdi]
mov qword [rax + 0x278], r12
mov rax, qword [rdi]
mov qword [rax + 0x280], r12
mov rax, qword [rdi]
cmp dword [rax + 4], 0
je 0x1800f0736
mov rax, qword [rdi + 8]
mov dword [rax + 0x3f68], r12d
mov rax, qword [rdi + 8]
mov rbx, qword [rax + 0x2a80]
test rbx, rbx
je 0x1800f0a8f
cmp qword [rbx], 0
je 0x1800f0a8f
mov eax, dword [rbx + 0x10]
mov esi, 0x20
add eax, 0x20
cmp dword [rbx + 0xc], eax
ja 0x1800f0776
mov edx, esi
mov rcx, rbx
call fcn.1800dae70
test eax, eax
je 0x1800f0a8f
mov r8d, dword [rbx + 0x14]
sub esi, r8d
cmp esi, 0x20
jbe 0x1800f0792
lea eax, [r8 + 0x20]
mov dword [rbx + 8], 0x664c6143
mov dword [rbx + 0x14], eax
jmp 0x1800f07cf
mov r9d, dword [rbx + 0x10]
mov r10, qword [rbx]
test r8d, r8d
je 0x1800f07c4
mov edx, dword [rbx + 8]
mov ecx, esi
shl edx, cl
mov eax, 0x664c6143
mov ecx, r8d
mov dword [rbx + 0x14], r8d
shr eax, cl
or edx, eax
bswap edx
mov dword [r10 + r9*4], edx
mov dword [rbx + 8], 0x664c6143
jmp 0x1800f07cc
mov dword [r10 + r9*4], 0x43614c66
inc dword [rbx + 0x10]
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.180109da0
test eax, eax
je 0x1800f041e
mov rax, qword [rdi]
cmp dword [rax + 4], 0
je 0x1800f07fb
mov rax, qword [rdi + 8]
mov dword [rax + 0x3f68], 1
mov rax, qword [rdi + 8]
xorps xmm0, xmm0
mov dword [rax + 0x2a98], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x2a9c], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x2aa0], 0x22
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov eax, dword [rax + 0x24]
mov dword [rcx + 0x2aa8], eax
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov eax, dword [rax + 0x24]
mov dword [rcx + 0x2aac], eax
mov rax, qword [rdi + 8]
mov dword [rax + 0x2ab0], r12d
mov rax, qword [rdi + 8]
mov dword [rax + 0x2ab4], r12d
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov eax, dword [rax + 0x20]
mov dword [rcx + 0x2ab8], eax
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov eax, dword [rax + 0x18]
mov dword [rcx + 0x2abc], eax
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov eax, dword [rax + 0x1c]
mov dword [rcx + 0x2ac0], eax
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov rax, qword [rax + 0x250]
mov qword [rcx + 0x2ac8], rax
mov rax, qword [rdi + 8]
movups xmmword [rax + 0x2ad0], xmm0
mov rax, qword [rdi]
cmp dword [rax + 0xc], 0
je 0x1800f08f3
mov rax, qword [rdi + 8]
mov dword [rax + 0x2b98], 0x67452301
mov dword [rax + 0x2b9c], 0xefcdab89
mov dword [rax + 0x2ba0], 0x98badcfe
mov qword [rax + 0x2ba4], 0x10325476
mov dword [rax + 0x2bac], r12d
mov qword [rax + 0x2bb0], r12
mov qword [rax + 0x2bb8], r12
mov rdx, qword [rdi + 8]
mov r8d, 1
lea rcx, [rdx + 0x2a98]
mov rdx, qword [rdx + 0x2a80]
call fcn.1800c2c00
test eax, eax
je 0x1800f0a8f
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.180109da0
test eax, eax
je 0x1800f041e
mov rax, qword [rdi + 8]
mov dword [rax + 0x2ab0], 0xffffff
mov rax, qword [rdi + 8]
mov qword [rax + 0x2ac8], r12
test r13d, r13d
jne 0x1800f09bb
mov rax, qword [rdi]
mov ecx, r12d
mov rdx, qword [rdi + 8]
mov r8d, 1
mov dword [rsp + 0x20], 4
mov dword [rsp + 0x28], 8
cmp dword [rax + 0x268], r13d
mov rdx, qword [rdx + 0x2a80]
sete cl
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x24], ecx
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x48], r12
call fcn.1800c2c00
test eax, eax
je 0x1800f0a8f
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.180109da0
test eax, eax
je 0x1800f041e
mov rcx, qword [rdi]
mov ebx, r12d
cmp dword [rcx + 0x268], 0
jbe 0x1800f0a3b
nop word [rax + rax]
mov eax, dword [rcx + 0x268]
mov edx, r12d
dec eax
mov r9d, ebx
cmp ebx, eax
mov r8d, 1
mov rax, qword [rcx + 0x260]
sete dl
mov rcx, qword [rax + r9*8]
mov dword [rcx + 4], edx
mov rax, qword [rdi]
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 0x260]
mov rdx, qword [rdx + 0x2a80]
mov rcx, qword [rcx + r9*8]
call fcn.1800c2c00
test eax, eax
je 0x1800f0a8f
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.180109da0
test eax, eax
je 0x1800f041e
mov rcx, qword [rdi]
inc ebx
cmp ebx, dword [rcx + 0x268]
jb 0x1800f09d0
mov r8, qword [rdi + 8]
mov rax, qword [r8 + 0x2c80]
test rax, rax
je 0x1800f0a71
mov r8, qword [r8 + 0x2ca0]
lea rdx, [rcx + 0x280]
mov rcx, rdi
call rax
cmp eax, 1
jne 0x1800f0a71
mov rax, qword [rdi]
mov dword [rax], 5
jmp 0x1800f041e
mov rax, qword [rdi]
cmp dword [rax + 4], 0
je 0x1800f0a88
mov rax, qword [rdi + 8]
mov dword [rax + 0x3f68], 2
xor eax, eax
jmp 0x1800f0423
mov rax, qword [rdi]
mov dword [rax], 7
jmp 0x1800f041e
mov eax, 9
jmp 0x1800f043b
mov eax, 7
jmp 0x1800f043b
mov eax, 5
jmp 0x1800f043b
mov eax, 4
add rsp, 0xe8
pop r14
pop rdi
pop rsi
pop rbp
ret
mov eax, 3
add rsp, 0xe8
pop r14
pop rdi
pop rsi
pop rbp
ret