Function at 0x427df0
Capabilities:
Authenticate hmac
Check os version
Inspect section memory permissions
Map section object
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x129f8
call fcn.00431b60
sub rsp, rax
vmovaps xmmword [rsp + 0x129e0], xmm7
vmovaps xmmword [rsp + 0x129d0], xmm6
mov r12, r8
mov qword [rsp + 0x68], rdx
lea r14, [rsp + 0x109d0]
mov r8d, 0x2000
mov dl, 0xaa
mov rdi, rcx
mov rsi, r9
mov rcx, r14
call fcn.0044c710
mov rcx, r14
mov rdx, rsi
call fcn.0042b6c0
cmp rax, 0x401
jae 0x42b5b4
mov r15, rax
mov rax, qword [rsp + 0x12a60]
cmp byte [rax + 8], 0
je 0x427e94
mov r14, qword [rsp + 0x68]
test r15, r15
je 0x427ea0
mov rcx, qword [rax]
xor eax, eax
nop dword [rax + rax]
cmp qword [rsp + rax*8 + 0x109d0], rcx
je 0x427e9b
inc rax
cmp r15, rax
jne 0x427e80
jmp 0x427ea0
mov r14, qword [rsp + 0x68]
xor eax, eax
sub r15, rax
jne 0x427ecf
xor r13d, r13d
vmovaps xmm6, xmmword [rsp + 0x129d0]
vmovaps xmm7, xmmword [rsp + 0x129e0]
mov eax, r13d
add rsp, 0x129f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
vzeroupper
ret
lea rax, [rsp + rax*8 + 0x109d0]
vbroadcastss xmm7, dword [0x00450a40]
lea rcx, [r14 + 0x10]
lea rdx, [rsp + 0x9d0]
vxorps xmm6, xmm6, xmm6
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0x1f8], rcx
lea rcx, [rsp + 0x9c8]
mov qword [rsp + 0x390], rax
lea rax, [0x00452778]
cmp rcx, rax
lea rcx, [0x00452770]
setae al
cmp rdx, rcx
setbe cl
xor ebx, ebx
or cl, al
mov byte [rsp + 0xef], cl
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0xb0], rsi
mov rbp, qword [rax + rbx*8]
sub rbp, 1
jb 0x42b59d
mov rax, qword [r14 + 0x40]
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x60], r9
test rax, rax
je 0x428be0
mov rsi, qword [r14 + 0x38]
add rsi, 0x48
jmp 0x427f9d
add rsi, 0x50
dec rax
je 0x428be0
mov rcx, qword [rsi - 0x48]
cmp rcx, rbp
ja 0x427f90
mov edx, dword [rsi]
add rdx, rcx
jb 0x42b59d
cmp rdx, rbp
jbe 0x427f90
mov rax, qword [r14 + 0x10]
cmp dword [r14 + 0x18], 0
lea r10, [0x00482fd0]
je 0x4280b0
rorx rdx, rcx, 0x20
movabs r9, 0xe7037ed1a0b428db
movabs r10, 0x1ff5c2923a788d2c
mov r8, rcx
xor r8, r10
xor rdx, r9
movabs r10, 0xa0761d6478bd6427
mulx rdx, r8, r8
xor r8, r10
xor rdx, r9
mulx rdx, r9, r8
test rax, rax
je 0x42b59d
test al, 7
jne 0x42b5cb
mov r8d, dword [rax - 8]
sub r8d, 1
jb 0x42b59d
xor rdx, r9
mov r9d, r8d
lea r10, [0x00482fd0]
and r9d, edx
movzx r11d, byte [rax + r9]
test r11b, r11b
je 0x4280b0
shr rdx, 0x39
mov r10d, r8d
nop dword [rax]
test r11b, r11b
jns 0x428068
and r11b, 0x7f
cmp dl, r11b
jne 0x428068
mov r11, qword [rax - 0x10]
cmp rcx, qword [r11 + r9*8]
je 0x428095
inc r9d
and r9d, r10d
sub r8d, 1
movzx r11d, byte [rax + r9]
setb dil
test r11b, r11b
je 0x428085
test dil, dil
je 0x428050
lea r10, [0x00482fd0]
cmp byte [r10 + 8], 0
jne 0x4280b7
jmp 0x4280e0
mov qword [rsp + 0xf0], r9
mov byte [rsp + 0xf8], 1
lea r10, [rsp + 0xf0]
nop dword [rax]
cmp byte [r10 + 8], 0
je 0x4280e0
test rax, rax
je 0x42b5e2
test al, 7
jne 0x42b5cb
mov rcx, qword [r10]
mov rax, qword [rax - 0x18]
mov r12, qword [rax + rcx*8]
test r12, r12
je 0x4280e0
mov r10, r12
jmp 0x4281b5
mov r15, qword [rsp + 0x12a38]
mov rcx, qword [r14]
mov rax, qword [r14 + 8]
mov edx, 0x428
mov r8b, 3
mov r9, r15
vzeroupper
call qword [rax]
test rax, rax
je 0x42b593
mov r8d, 0x428
mov dl, 0xaa
mov rcx, rax
mov r12, rax
call fcn.0044c710
test r12b, 7
jne 0x42b5cb
mov rdx, qword [rsi - 0x48]
test rdx, rdx
je 0x42b5f9
mov r8d, dword [rsi]
lea rcx, [rsp + 0x3c8]
mov r9b, 1
call fcn.0040df10
movzx r13d, word [rsp + 0x3f8]
test r13w, r13w
je 0x4284f8
mov rcx, qword [r14]
mov rax, qword [r14 + 8]
mov r8d, 0x428
mov r9b, 3
mov rdx, r12
mov qword [rsp + 0x20], r15
call qword [rax + 0x10]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x60]
cmp r13w, 0x33
je 0x428be0
movzx eax, r13w
cmp eax, 0x31
je 0x428be0
mov r10, qword [rsp + 0xa8]
test eax, eax
jne 0x4286fa
mov rsi, rbp
sub rsi, qword [r10]
jb 0x42b59d
cmp byte [r10 + 0xa0], 0
mov qword [rsp + 0xa8], r10
je 0x4282c2
mov rax, qword [r10 + 0x80]
test rax, rax
je 0x4282c2
mov rcx, qword [r10 + 0x78]
mov r12, qword [r10 + 0x418]
mov rdx, qword [r10 + 0x420]
add rcx, 0x10
jmp 0x42820d
add rcx, 0x1c
dec rax
je 0x4282c2
movzx r8d, word [rcx - 0x10]
cmp rdx, r8
jb 0x428200
sub r8w, 1
jb 0x42b59d
movzx r9d, r8w
cmp rdx, r9
jbe 0x42b5b4
lea r15, [r9 + r9*4]
mov r8d, dword [rcx - 0xc]
add r8d, dword [r12 + r15*8 + 0xc]
jb 0x42b59d
mov r9d, dword [rcx - 8]
add r9d, r8d
jb 0x42b59d
mov r8d, r8d
cmp rsi, r8
jb 0x428200
mov r8d, r9d
cmp rsi, r8
jae 0x428200
movzx eax, word [rcx]
cmp qword [r10 + 0x70], rax
jbe 0x428785
mov rdx, qword [r10 + 0x68]
imul r8, rax, 0x98
mov r9, qword [rsp + 0x60]
cmp byte [rdx + r8 + 0x90], 0
lea rax, [rdx + r8 + 0x90]
mov qword [rsp + 0x90], rax
je 0x428d9c
mov rcx, qword [rdx + r8 + 0x18]
mov qword [rsp + 0x88], r8
test rcx, rcx
je 0x429abe
mov r13, qword [rdx + r8 + 0x10]
lea rax, [rcx - 2]
mov rdi, rdx
jmp 0x42847d
cmp byte [r10 + 0x408], 0
je 0x4286bd
add rsi, qword [r10 + 0x410]
jb 0x42b59d
mov r12, qword [r10 + 0x368]
test r12, r12
je 0x428732
mov rax, qword [rsp + 0xa8]
xor edi, edi
mov r14, qword [rax + 0x360]
lea rcx, [rax + 0xa8]
mov qword [rsp + 0x90], rcx
jmp 0x428342
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x9c8]
mov r9, r15
vzeroupper
call fcn.004114b0
cmp word [rsp + 0xa08], 0
je 0x428392
inc rdi
cmp rdi, r12
je 0x428732
imul rax, rdi, 0x68
cmp byte [r14 + rax + 0x30], 0
lea r15, [r14 + rax]
je 0x428366
lea rax, [r14 + rax + 0x20]
cmp qword [rax], rsi
ja 0x428366
cmp qword [rax + 8], rsi
ja 0x42840c
mov rax, qword [r15 + 0x10]
test rax, rax
je 0x428336
mov rdx, qword [r15 + 8]
add rdx, 8
nop word [rax + rax]
cmp qword [rdx - 8], 0x55
je 0x428310
add rdx, 0x20
dec rax
jne 0x428380
jmp 0x428336
vmovups ymm0, ymmword [rsp + 0x9c8]
vmovups ymm1, ymmword [rsp + 0x9e8]
vmovups ymmword [rsp + 0x5b0], ymm1
vmovups ymmword [rsp + 0x590], ymm0
nop word cs:[rax + rax]
lea rcx, [rsp + 0x280]
lea rdx, [rsp + 0x590]
vzeroupper
call fcn.00411970
movzx r13d, word [rsp + 0x298]
test r13d, r13d
jne 0x428711
cmp byte [rsp + 0x290], 0
je 0x428336
cmp qword [rsp + 0x280], rsi
ja 0x4283c0
cmp qword [rsp + 0x288], rsi
jbe 0x4283c0
mov rdi, qword [rsp + 0xa8]
mov rax, qword [rdi + 0x380]
test rax, rax
je 0x42889f
mov rcx, qword [rdi + 0x378]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
add rcx, 0x20
jmp 0x42844d
add rcx, 0x28
dec rax
je 0x4288a9
cmp byte [rcx - 0x10], 0
je 0x428440
cmp qword [rcx - 0x20], rsi
ja 0x428440
cmp qword [rcx - 0x18], rsi
jbe 0x428440
mov r13, qword [rcx - 8]
mov rcx, qword [rcx]
jmp 0x4288ae
dec rax
cmp rax, 0xfffffffffffffffe
je 0x429ac1
movzx r8d, byte [r13 + rax + 1]
cmp r8d, 0x5c
je 0x428470
cmp r8d, 0x2f
je 0x428470
test rax, rax
jne 0x42849e
cmp r8b, 0x3a
je 0x429ac1
lea r11, [rax + 2]
lea rdx, [rax + 1]
cmp rax, rcx
jae 0x4293db
cmp r8b, 0x2f
je 0x429807
movzx r9d, r8b
cmp r9d, 0x5c
je 0x429807
cmp r8b, 0x3a
jne 0x4284d7
cmp rdx, 1
je 0x429802
mov r9, rdx
sub r9, 1
jb 0x429403
movzx r8d, byte [r13 + rdx - 1]
mov rdx, r9
cmp r8b, 0x2f
jne 0x4284b9
jmp 0x429807
vmovups ymm1, ymmword [rsp + 0x3d8]
vmovups ymm0, ymmword [rsp + 0x3c8]
vmovups ymmword [rsp + 0x2d0], ymm1
vmovups ymmword [rsp + 0x2c0], ymm0
mov rax, qword [rsp + 0x2d0]
lea rcx, [rax + 0x14]
cmp rcx, qword [rsp + 0x2c8]
ja 0x42b5b4
cmp rax, 0xffffffffffffffec
jae 0x42b59d
mov rdx, qword [rsp + 0x2c0]
movzx r8d, word [rdx + rax + 0x10]
add rcx, r8
jb 0x42b59d
movzx r9d, word [rdx + rax + 2]
test r9, r9
je 0x429200
cmp byte [rdx + rcx], 0x2f
je 0x428596
add rax, r8
shl r9d, 3
lea rax, [rdx + rax + 0x3c]
lea rcx, [r9 + r9*4]
xor edx, edx
nop
lea r8, [rdx + 0x28]
cmp rcx, r8
je 0x429200
cmp byte [rax + rdx], 0x2f
mov rdx, r8
jne 0x428580
mov r8d, 0x10008
lea rcx, [rsp + 0x9c8]
mov dl, 0xaa
vzeroupper
call fcn.0044c710
cmp byte [rsp + 0xef], 0
je 0x42b624
movabs rax, 0x5c003f003f005c
mov qword [rsp + 0x9c8], rax
call sub.KERNEL32.dll_GetCurrentProcess
mov rdx, qword [rsi - 0x30]
lea r8, [rsp + 0x9d0]
mov r9d, 0x7fff
mov rcx, rax
mov rdi, rax
call sub.KERNEL32.dll_K32GetModuleFileNameExW
test eax, eax
je 0x428baa
add eax, 4
jb 0x42b59d
cmp eax, 0x8004
jae 0x42b5b4
mov r9d, eax
cmp word [rsp + r9*2 + 0x9c8], 0
jne 0x42b638
movzx eax, word [rsp + 0x9c8]
cmp eax, 0x2f
je 0x428656
cmp eax, 0x5c
je 0x428656
cmp word [rsp + 0x9ca], 0x3a
jne 0x42b60d
movzx eax, word [rsp + 0x9cc]
cmp eax, 0x2f
je 0x428656
cmp eax, 0x5c
jne 0x42b60d
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
lea rcx, [0x00452808]
lea rdx, [rsp + 0x150]
lea r8, [rsp + 0x9c8]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x48]
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xf0]
mov qword [rsp + 0x150], rax
call fcn.0040c460
movzx r13d, word [rsp + 0xf8]
test r13d, r13d
je 0x428adc
cmp r13d, 0xa
je 0x428baa
jmp 0x428158
vmovups ymm0, ymmword [0x004527e8]
vmovups ymm1, ymmword [0x004527b8]
vmovups ymm2, ymmword [0x004527d8]
mov r12, qword [rsp + 0x70]
vmovups ymmword [rsp + 0x230], ymm0
vmovups ymmword [rsp + 0x220], ymm2
vmovups ymmword [rsp + 0x200], ymm1
jmp 0x4287d6
mov r12, qword [rsp + 0x70]
mov rsi, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x58]
jmp 0x428c8d
mov rcx, qword [rsp + 0x1c8]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
mov eax, r13d
or eax, 2
cmp eax, 0x33
jne 0x428ca8
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
lea rax, [0x00452778]
mov ecx, 3
mov r10d, 3
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0x400], ymm0
mov qword [rsp + 0x420], 0
xor r13d, r13d
mov rsi, rax
mov r9, rax
jmp 0x428cca
mov r12, qword [rsp + 0x70]
mov r13w, 0x33
mov word [rsp + 0x248], r13w
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
test r13w, r13w
jne 0x428d33
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x58], r10
mov qword [rsp + 0xb0], rsi
vmovups xmm0, xmmword [rsp + 0x208]
mov rax, qword [rsp + 0x218]
mov r15, qword [rsp + 0x230]
mov rsi, qword [rsp + 0x238]
mov r9, qword [rsp + 0x200]
movzx edi, byte [rsp + 0x240]
mov qword [rsp + 0x38], r12
lea rdx, [rsp + 0x220]
mov r8, rbp
mov qword [rsp + 0x30], rax
vmovups xmmword [rsp + 0x20], xmm0
mov rcx, qword [rsp + 0x98]
vzeroupper
call fcn.00427170
mov r13d, eax
test dil, dil
je 0x428882
test rsi, rsi
movabs rax, 0xaaaaaaaaaaaaaaaa
cmove r15, rax
je 0x428882
mov r12, qword [r14]
mov rdi, qword [r14 + 8]
mov dl, 0xaa
mov rcx, r15
mov r8, rsi
call fcn.0044c710
mov rax, qword [rsp + 0x12a38]
mov rcx, r12
mov r12, qword [rsp + 0x70]
mov rdx, r15
mov r8, rsi
xor r9d, r9d
mov qword [rsp + 0x20], rax
call qword [rdi + 0x10]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb0]
jmp 0x428c83
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
xor r13d, r13d
xor ecx, ecx
test r13, r13
mov edx, 3
mov eax, 3
cmove rcx, rdx
lea rdx, [0x00452778]
mov qword [rsp + 0x88], rax
cmove r13, rdx
cmp byte [rdi + 0x130], 0
mov qword [rsp + 0xc0], rcx
je 0x4288f3
mov rax, qword [rdi + 0x108]
mov rcx, qword [rdi + 0x110]
jmp 0x4288f7
xor eax, eax
xor ecx, ecx
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x28], rcx
mov r9d, 3
lea rcx, [rsp + 0x4e8]
mov rdx, r15
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x20], rax
vzeroupper
call fcn.004121b0
movzx eax, word [rsp + 0x4f8]
test eax, eax
je 0x428949
lea rcx, [0x00452778]
cmp eax, 0x33
je 0x428961
cmp eax, 0x31
je 0x428961
jmp case.0x429bd1.4138
mov rax, qword [rsp + 0x4f0]
mov rcx, qword [rsp + 0x4e8]
mov qword [rsp + 0x88], rax
mov rax, qword [r15 + 0x60]
mov qword [rsp + 0x178], r13
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x5f0], rax
vmovups ymm0, ymmword [r15]
vmovups ymm1, ymmword [r15 + 0x20]
vmovups ymm2, ymmword [r15 + 0x40]
vmovups ymmword [rsp + 0x5d0], ymm2
vmovups ymmword [rsp + 0x5b0], ymm1
vmovups ymmword [rsp + 0x590], ymm0
cmp byte [rdi + 0x1c0], 0
je 0x4289c2
mov rax, qword [rdi + 0x198]
mov rcx, qword [rdi + 0x1a0]
jmp 0x4289c6
xor eax, eax
xor ecx, ecx
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x28], rcx
mov r9d, 0x1b
lea rcx, [rsp + 0x500]
lea rdx, [rsp + 0x590]
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x20], rax
vzeroupper
call fcn.004121b0
movzx r13d, word [rsp + 0x510]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
test r13w, r13w
je 0x428a4c
movzx ecx, r13w
lea rax, [0x00452840]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb0]
or ecx, 2
cmp ecx, 0x33
mov rcx, qword [rsp + 0x1c8]
je 0x428a9b
jmp 0x428cca
mov rax, qword [r15 + 0x10]
test rax, rax
je 0x428a84
mov rdx, qword [r15 + 8]
mov rcx, qword [rsp + 0x500]
mov r8, qword [rsp + 0x508]
add rdx, 8
nop dword [rax]
cmp qword [rdx - 8], 0x10
je 0x428db3
add rdx, 0x20
dec rax
jne 0x428a70
lea rax, [0x00452840]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rcx, qword [rax + 0x20]
vmovups ymm0, ymmword [rax]
mov rsi, qword [rsp + 0x180]
mov r10, qword [rsp + 0xc0]
mov r9, qword [rsp + 0x178]
xor r13d, r13d
mov qword [rsp + 0x420], rcx
mov rcx, qword [rsp + 0x88]
vmovups ymmword [rsp + 0x400], ymm0
jmp 0x428cca
mov r13, qword [rsp + 0xf0]
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rcx, [rsp + 0x250]
mov edx, 0xf0005
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], 2
xor r8d, r8d
xor r9d, r9d
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x30], r13
call sub.ntdll.dll_NtCreateSection
test eax, eax
jne 0x428b9a
mov rcx, qword [rsp + 0x250]
lea rax, [rsp + 0x400]
lea r8, [rsp + 0x120]
mov qword [rsp + 0x400], 0
mov qword [rsp + 0x120], 0
mov rdx, rdi
xor r9d, r9d
mov qword [rsp + 0x30], rax
vmovups xmmword [rsp + 0x20], xmm6
mov dword [rsp + 0x48], 2
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 1
call sub.ntdll.dll_NtMapViewOfSection
test eax, eax
je 0x429047
mov rcx, qword [rsp + 0x250]
call fcn.004097f0
mov rcx, r13
call sub.ntdll.dll_NtClose
test eax, eax
jne 0x42b60d
mov rcx, qword [r14]
mov rax, qword [r14 + 8]
mov r8d, 0x428
mov r9b, 3
mov rdx, r12
mov qword [rsp + 0x20], r15
call qword [rax + 0x10]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
nop word [rax + rax]
mov rax, qword [r14 + 0x40]
test rax, rax
je 0x428c30
mov rcx, qword [r14 + 0x38]
mov rsi, qword [rsp + 0xb0]
jmp 0x428c09
add rcx, 0x50
dec rax
je 0x428c38
mov rdx, qword [rcx]
cmp rdx, rbp
ja 0x428c00
mov r8d, dword [rcx + 0x48]
add rdx, r8
jb 0x42b59d
cmp rdx, rbp
jbe 0x428c00
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
jmp 0x428c3c
mov rsi, qword [rsp + 0xb0]
xor eax, eax
xor ecx, ecx
test rax, rax
lea r9, [0x00452778]
mov edx, 3
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x20], 3
mov r8, rbp
cmove rcx, rdx
cmove rax, r9
lea rdx, [0x00452840]
mov qword [rsp + 0x30], rcx
mov rcx, rdi
mov qword [rsp + 0x28], rax
vzeroupper
call fcn.00427170
mov r13d, eax
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
test r13w, r13w
jne 0x427ea3
inc rbx
cmp rbx, r15
jne 0x427f50
jmp 0x427ea0
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb0]
vmovups ymm0, ymmword [rsp + 0x400]
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x200], r9
mov qword [rsp + 0x208], r10
mov qword [rsp + 0x210], rsi
mov qword [rsp + 0x1c8], rcx
mov qword [rsp + 0x218], rcx
lea rcx, [rsp + 0x220]
mov qword [rcx + 0x20], rax
vmovups ymmword [rcx], ymm0
mov word [rsp + 0x248], r13w
mov word [rcx + 0x2e], 0
mov dword [rcx + 0x2a], 0
test r13w, r13w
je 0x4287c4
movzx eax, r13w
cmp eax, 0x31
je 0x428d45
cmp eax, 0x33
jne 0x428c8d
mov rax, qword [r14 + 0x40]
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x60], r9
test rax, rax
je 0x428c38
mov rcx, qword [r14 + 0x38]
jmp 0x428d7d
add rcx, 0x50
dec rax
je 0x428c38
mov rdx, qword [rcx]
cmp rdx, rbp
ja 0x428d70
mov r8d, dword [rcx + 0x48]
add rdx, r8
jb 0x42b59d
cmp rdx, rbp
jbe 0x428d70
jmp 0x428c23
cmp dword [rdx + r8 + 0x78], 0
je 0x428e08
mov r10, qword [rsp + 0x58]
mov r13w, 0x33
jmp 0x42a1b4
mov r15, rcx
lea rcx, [rsp + 0x120]
mov qword [rsp + 0xb8], r8
call fcn.00423ca0
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x58]
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x428a14
cmp byte [rdi + 0x190], 0
je 0x4290d6
mov rcx, qword [rdi + 0x170]
mov rax, qword [rdi + 0x168]
jmp 0x4290da
cmp dword [rdx + r8 + 0x7c], 0
je 0x428da4
movzx eax, word [rdx + r8 + 0x72]
mov r13w, 0x31
cmp qword [r10 + 0x40], rax
jbe 0x429f87
mov rcx, qword [r10 + 0x38]
mov r10, qword [rsp + 0x58]
test rcx, rcx
je 0x42a1b4
lea rax, [rax + rax*4]
mov qword [rsp + 0xc0], rdx
lea rdx, [rdx + r8 + 0x7c]
xor edi, edi
mov qword [rsp + 0x88], r8
mov dword [rsp + 0x150], 0xaaaaaaaa
lea rax, [rcx + rax*8]
mov qword [rsp + 0x180], rdx
mov qword [rsp + 0x178], rax
mov qword [rsp + 0xf0], rax
mov r9d, 4
lea r8, [rsp + rdi + 0x150]
lea rcx, [rsp + 0x280]
lea rdx, [rsp + 0xf0]
sub r9, rdi
vzeroupper
call fcn.00413130
movzx r13d, word [rsp + 0x288]
test r13d, r13d
jne 0x429411
mov rax, qword [rsp + 0x280]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
test rax, rax
je 0x429441
add rdi, rax
jb 0x42b59d
cmp rdi, 4
jb 0x428e79
cmp dword [rsp + 0x150], 4
jne 0x429e3e
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x88]
mov eax, dword [rax + rcx + 0x74]
sub eax, 4
jb 0x42b59d
mov rcx, qword [rsp + 0xa8]
mov r9d, eax
mov rdx, qword [rcx + 0x48]
mov r8, qword [rcx + 0x50]
lea rcx, [rsp + 0x590]
call fcn.004018a0
movzx r13d, word [rsp + 0x5a0]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
mov rdi, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x88]
test r13w, r13w
jne 0x42a1b4
mov rdx, qword [rsp + 0x590]
mov r8, qword [rsp + 0x598]
mov r9, qword [rsp + 0x178]
lea rcx, [rdi + rax + 0x20]
mov r14, rax
mov qword [rsp + 0xb8], rcx
mov qword [rcx], rdx
lea rcx, [rsp + 0x320]
mov qword [rdi + rax + 0x28], r8
lea rax, [fcn.00413130]
mov qword [rsp + 0x320], r9
mov qword [rsp + 0x2c0], rcx
lea rcx, [rsp + 0x2c0]
mov qword [rsp + 0x2c8], rax
call fcn.0040e290
cmp ax, 0x34
ja 0x42b6a2
mov r13d, eax
lea r14, [rdi + r14 + 0x28]
movzx eax, ax
movabs rcx, 0x10107f42810800
bt rcx, rax
jae 0x42982c
mov rsi, qword [r14]
movabs r15, 0xaaaaaaaaaaaaaaaa
test rsi, rsi
je 0x429000
mov rax, qword [rsp + 0xb8]
mov r15, qword [rax]
je 0x429038
mov dl, 0xaa
mov rcx, r15
mov r8, rsi
call fcn.0044c710
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x12a38]
mov r8, rsi
xor r9d, r9d
mov rcx, qword [rax + 0x48]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], rdx
mov rdx, r15
call qword [rax + 0x10]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
jmp 0x42878f
mov rdx, qword [rsp + 0x120]
mov qword [rsp + 0x90], r13
test rdx, rdx
je 0x42b5f9
mov r8, qword [rsp + 0x400]
lea rcx, [rsp + 0x280]
xor r9d, r9d
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0xc0], r8
call fcn.0040df10
movzx r13d, word [rsp + 0x2b0]
test r13w, r13w
je 0x4291a8
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x42b5f9
mov rcx, rdi
call sub.ntdll.dll_NtUnmapViewOfSection
test eax, eax
jne 0x42b60d
mov rcx, qword [rsp + 0x250]
call fcn.004097f0
mov rcx, qword [rsp + 0x90]
jmp 0x429280
xor ecx, ecx
xor eax, eax
test rax, rax
je 0x42b5e2
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], rcx
mov r8, qword [rsp + 0x120]
movzx edx, byte [rdi + 0x400]
and dl, 1
sub rcx, r8
mov byte [rsp + 0xe0], dl
jae 0x42913b
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x1c8]
mov rsi, qword [rsp + 0xb0]
mov r13w, 0x36
jmp 0x428cca
mov r13w, 0x36
mov qword [rsp + 0xd8], r8
cmp rcx, 4
jb 0x428a14
mov rcx, r8
add rcx, 4
jb 0x42b59d
mov edx, dword [rax + r8]
test byte [rsp + 0xe0], 1
mov qword [rsp + 0xd8], rcx
mov eax, edx
bswap eax
cmovne eax, edx
cmp eax, 0xffffffff
je 0x42944b
mov r13w, 0x33
cmp eax, 0xfffffff0
jae 0x428a14
mov byte [rsp + 0x80], 0
mov byte [rsp + 0x87], 4
mov eax, eax
jmp 0x42949b
vmovups ymm1, ymmword [rsp + 0x290]
vmovups ymm0, ymmword [rsp + 0x280]
mov rax, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xc0]
vmovups ymmword [rsp + 0x2d0], ymm1
vmovups ymmword [rsp + 0x2c0], ymm0
mov byte [rsi - 8], 1
mov qword [rsi - 0x28], rax
mov rax, qword [rsp + 0x250]
mov qword [rsi - 0x20], rax
mov qword [rsi - 0x18], rdx
mov qword [rsi - 0x10], rcx
lea rdi, [rsp + 0x590]
lea r8, [rsp + 0x2c0]
mov rdx, r14
mov rcx, rdi
vzeroupper
call fcn.004162e0
movzx r13d, word [rsp + 0x9b8]
test r13w, r13w
je 0x429292
cmp byte [rsi - 8], 0
je 0x428158
add rsi, 0xffffffffffffffd8
vmovups ymm0, ymmword [rsi]
lea rsi, [rsp + 0x320]
vmovups ymmword [rsp + 0x320], ymm0
vzeroupper
call sub.KERNEL32.dll_GetCurrentProcess
mov rdx, qword [rsi + 0x10]
mov rcx, rax
call sub.ntdll.dll_NtUnmapViewOfSection
test eax, eax
jne 0x42b60d
mov rcx, qword [rsi + 8]
call sub.ntdll.dll_NtClose
test eax, eax
jne 0x42b60d
mov rcx, qword [rsi]
call sub.ntdll.dll_NtClose
test eax, eax
je 0x428158
jmp 0x42b60d
mov r8d, 0x428
mov rcx, r12
mov rdx, rdi
call fcn.0044c2f0
mov rdx, qword [rsi - 0x48]
mov qword [r12], rdx
test byte [r14 + 0x20], 1
jne 0x42b60d
mov byte [r14 + 0x20], 1
cmp dword [r14 + 0x1c], 0
je 0x4292e7
test byte [r14 + 0x20], 1
je 0x42b60d
mov rcx, qword [rsp + 0x1f8]
mov r8, r12
mov byte [r14 + 0x20], 0
call fcn.00430990
jmp 0x4280d8
mov rcx, qword [rsp + 0x1f8]
mov rdi, rdx
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x100], rax
vmovups xmm0, xmmword [rcx]
lea rcx, [rsp + 0xf0]
vmovaps xmmword [rsp + 0xf0], xmm0
call fcn.004311f0
mov eax, eax
shl rax, 4
lea rdx, [rax + rax*4]
movabs rax, 0x28f5c28f5c28f5d
mulx rax, rax, rax
mov ecx, dword [r14 + 0x1c]
cmp rax, rcx
jb 0x42b60d
sub eax, ecx
inc eax
je 0x42b59d
cmp eax, 0xcccccccb
ja 0x42b64c
mov eax, eax
imul rdx, rax, 0x64
movabs rax, 0x333333333333334
mulx rax, rax, rax
lzcnt eax, eax
je 0x42b660
add ax, 0x20
mov ecx, 1
lea rdx, [r14 + 0x28]
neg ax
shlx r8, rcx, rax
mov rcx, qword [rsp + 0x1f8]
call fcn.00431230
mov rdx, rdi
test ax, ax
je 0x4292c2
test byte [r14 + 0x20], 1
je 0x42b60d
mov byte [r14 + 0x20], 0
mov r13d, eax
cmp byte [rsi - 8], 0
je 0x428158
add rsi, 0xffffffffffffffd8
vmovups ymm0, ymmword [rsi]
lea rsi, [rsp + 0x350]
vmovups ymmword [rsp + 0x350], ymm0
jmp 0x429250
cmp r8b, 0x5c
je 0x429807
test rax, rax
jne 0x4293f9
mov edx, 1
cmp r8b, 0x3a
je 0x429807
cmp rax, 0xffffffffffffffff
jne 0x42b5b4
cmp r11, rcx
jbe 0x429ace
jmp 0x42b5b4
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
cmp r13d, 0x34
ja 0x42b6a2
movabs rcx, 0x10107f42810800
mov eax, r13d
bt rcx, rax
jb 0x42a1b4
jmp 0x42b6a2
mov r13w, 0x34
jmp 0x42a1b4
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
mov byte [rsp + 0x80], 1
mov byte [rsp + 0x87], 0xc
mov rdi, r8
call fcn.0040e590
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x58]
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x428a14
mov rax, qword [rsp + 0x120]
mov r8, rdi
test rax, rax
je 0x428a84
movzx edi, byte [rsp + 0x87]
mov qword [rsp + 0x1f0], r8
and edi, 0xf
add rdi, rax
jb 0x42b59d
movzx eax, byte [rsp + 0x80]
lea rcx, [rsp + 0x1d0]
lea rdx, [rsp + 0xc8]
mov byte [rsp + 0x7e], al
call fcn.00411fa0
movzx r13d, word [rsp + 0x1d2]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
test r13w, r13w
jne 0x428a14
movzx eax, word [rsp + 0x1d0]
cmp ax, 2
jb 0x428a84
mov word [rsp + 0xec], ax
cmp ax, 4
jbe 0x429564
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xd8]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
cmp rax, rcx
jae 0x429111
lea rdx, [rax + 1]
cmp rdx, rcx
jae 0x429111
add rax, 2
mov qword [rsp + 0xd8], rax
movzx r8d, byte [rsp + 0x7e]
lea rcx, [rsp + 0x468]
lea rdx, [rsp + 0xc8]
and r8b, 1
mov byte [rsp + 0x7e], r8b
call fcn.00412030
movzx r13d, word [rsp + 0x470]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
test r13w, r13w
jne 0x428a14
mov r8, qword [rsp + 0xd8]
mov rax, qword [rsp + 0x468]
add rax, r8
mov qword [rsp + 0x1b8], rax
jb 0x42b59d
mov rax, qword [rsp + 0xd0]
cmp r8, rax
jae 0x42b4f0
mov rcx, qword [rsp + 0xc8]
lea rdx, [r8 + 1]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
movzx r9d, byte [rcx + r8]
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0x1e8], r9
test r9, r9
movzx r9d, word [rsp + 0xec]
je 0x428a84
cmp r9w, 3
jbe 0x429651
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
cmp rdx, rax
jae 0x429111
add r8, 2
mov rdx, r8
mov qword [rsp + 0xd8], r8
cmp rdx, rax
jae 0x42b4f0
movzx r9d, byte [rcx + rdx]
lea r8, [rdx + 1]
mov qword [rsp + 0xd8], r8
mov byte [rsp + 0xee], r9b
cmp r8, rax
jae 0x42b4f0
movsx r9, byte [rcx + rdx + 1]
lea r8, [rdx + 2]
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0x388], r9
cmp r8, rax
jae 0x42b4f0
movzx r9d, byte [rcx + rdx + 2]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
lea r8, [rdx + 3]
mov qword [rsp + 0xd8], r8
mov byte [rsp + 0x86], r9b
test r9b, r9b
je 0x428a84
cmp r8, rax
jae 0x42b4f0
movzx eax, byte [rcx + rdx + 3]
add rdx, 4
mov qword [rsp + 0xd8], rdx
mov byte [rsp + 0x7f], al
sub al, 1
jb 0x42b59d
movzx r8d, al
lea rcx, [rsp + 0x518]
lea rdx, [rsp + 0xc8]
call fcn.00424400
movzx r13d, word [rsp + 0x528]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
test r13w, r13w
jne 0x428a14
lea rcx, [rsp + 0x158]
mov rdx, qword [rsp + 0x520]
mov rax, qword [rsp + 0x518]
cmp word [rsp + 0xec], 5
vmovups xmmword [rcx], xmm6
vmovups xmm0, xmmword [r14]
mov qword [rsp + 0x380], rdx
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0x378], rax
vmovups xmmword [rdx], xmm6
vmovups xmmword [rcx + 0x10], xmm0
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x150], rcx
vmovups xmm0, xmmword [r14]
vmovups xmmword [rdx + 0x10], xmm0
mov qword [rsp + 0xf0], rcx
jae 0x42a1e9
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x150]
call fcn.0042ee50
movzx r13d, word [rsp + 0x128]
test r13w, r13w
je 0x42a271
lea rcx, [rsp + 0xf0]
call fcn.00424490
lea rcx, [rsp + 0x150]
call fcn.00424490
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
jmp 0x428a14
mov edx, 1
cmp rdx, r11
jae 0x42b68b
cmp r11, rcx
ja 0x42b5b4
sub rax, rdx
lea r13, [rdx + r13 + 1]
inc rax
mov r11, rax
jmp 0x429ace
test rax, rax
jne 0x42b6a2
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x180]
mov r9d, dword [rax]
mov rdx, qword [rcx + 0x48]
mov r8, qword [rcx + 0x50]
lea rcx, [rsp + 0x9c8]
call fcn.004018a0
movzx r13d, word [rsp + 0x9d8]
test r13w, r13w
je 0x4298cf
mov rsi, qword [r14]
movabs r15, 0xaaaaaaaaaaaaaaaa
test rsi, rsi
je 0x429889
mov rax, qword [rsp + 0xb8]
mov r15, qword [rax]
je 0x4299c4
mov dl, 0xaa
mov rcx, r15
mov r8, rsi
call fcn.0044c710
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x12a38]
mov r8, rsi
xor r9d, r9d
mov rcx, qword [rax + 0x48]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], rdx
mov rdx, r15
call qword [rax + 0x10]
mov r14, qword [rsp + 0x68]
jmp 0x42a1aa
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x9c8]
mov r8, qword [rsp + 0x9d0]
mov r9, qword [rsp + 0x178]
lea rdi, [rax + rcx + 0x30]
mov qword [rdi], rdx
mov qword [rax + rcx + 0x38], r8
lea rcx, [rsp + 0x350]
lea rax, [fcn.00413130]
mov qword [rsp + 0x350], r9
mov qword [rsp + 0x3c8], rcx
lea rcx, [rsp + 0x3c8]
mov qword [rsp + 0x3d0], rax
call fcn.0040e290
cmp ax, 0x34
ja 0x42b6a2
mov r13d, eax
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x88]
movabs rdx, 0x10107f42810800
lea rax, [rax + rcx + 0x38]
movzx ecx, r13w
bt rdx, rcx
jae 0x4299ce
mov rsi, qword [rax]
movabs r15, 0xaaaaaaaaaaaaaaaa
test rsi, rsi
je 0x429983
mov r15, qword [rdi]
je 0x428fe3
mov dl, 0xaa
mov rcx, r15
mov r8, rsi
call fcn.0044c710
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x12a38]
mov r8, rsi
xor r9d, r9d
mov rcx, qword [rax + 0x48]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], rdx
mov rdx, r15
call qword [rax + 0x10]
jmp 0x428fe3
mov r14, qword [rsp + 0x68]
jmp 0x42a1aa
test rcx, rcx
jne 0x42b6a2
mov rax, qword [rax]
mov qword [rsp + 0x178], rax
test rax, rax
je 0x429a80
mov rax, qword [rdi]
mov qword [rsp + 0x180], rax
xor eax, eax
cmp rax, qword [rsp + 0x178]
jae 0x42b5b4
mov rdi, rax
add rdi, 8
jb 0x42b59d
mov rcx, qword [rsp + 0x180]
mov ecx, dword [rcx + rax]
cmp ecx, 0xf4
je 0x429a66
mov rdx, qword [rsp + 0x180]
mov r13d, dword [rdx + rax + 4]
call fcn.00423c80
test al, 1
je case.0x429bd1.4138
cmp rdi, qword [rsp + 0x178]
ja 0x42a10d
add rdi, r13
jb 0x42b59d
mov rax, rdi
cmp rdi, qword [rsp + 0x178]
jne 0x4299f8
jmp 0x429a80
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x88]
mov qword [rax + rcx + 0x40], rdi
mov byte [rax + rcx + 0x48], 1
mov rax, qword [rsp + 0x90]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x88]
mov byte [rax], 1
mov rcx, qword [rdx + r8 + 0x18]
mov qword [rsp + 0x88], r8
test rcx, rcx
jne 0x4282b1
mov rdi, rdx
movabs r13, 0xaaaaaaaaaaaaaaaa
xor r11d, r11d
cmp byte [r10 + 0xa0], 0
je 0x42b5e2
lea r15, [r12 + r15*8 + 0xc]
mov r10, qword [rsp + 0x58]
mov r8, qword [rsp + 0x88]
mov rax, rsi
mov ecx, dword [r15]
sub rax, rcx
setb cl
jb 0x42b59d
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0x180], r11
cmp byte [rdx], 1
jne 0x42b60d
mov rdx, qword [rdi + r8 + 0x28]
mov r9d, 3
mov qword [rsp + 0x178], r9
test rdx, rdx
je 0x429c41
mov r8, qword [rdi + r8 + 0x20]
xor r9d, r9d
mov qword [rsp + 0xc0], rdi
cmp r9, rdx
jae 0x42b5b4
movzx r10d, word [r8 + r9]
cmp r10w, 2
jb 0x429c57
movzx r11d, word [r8 + r9 + 2]
lea edi, [r11 - 0x110f]
cmp di, 2
jae 0x429bab
mov rdi, r9
add rdi, 4
jb 0x42b59d
cmp rdi, rdx
jae 0x42b5b4
mov r11d, dword [r8 + rdi + 0x1c]
cmp rax, r11
jb case.0x429bd1.4096
add rdi, r8
add r11d, dword [rdi + 0xc]
jb 0x42b59d
mov r11d, r11d
cmp rax, r11
jae case.0x429bd1.4096
jmp 0x429f91
cmp r11d, 0x2ff
jle 0x429bfc
lea edi, [r11 - 0x1000]
cmp edi, 0x168
ja case.default.0x429bd1
lea r12, [0x00450a44]
movsxd r11, dword [r12 + rdi*4]
add r11, r12
jmp r11
add r10w, 2
jb 0x42b59d
movzx r10d, r10w
add r9, r10
jb 0x42b59d
mov r10, qword [rsp + 0x58]
cmp r9, rdx
jne 0x429b45
jmp 0x429c5c
lea edi, [r11 - 0x200]
cmp edi, 0x10
jb case.0x429bd1.4096
lea edi, [r11 - 1]
cmp edi, 0xe
jb case.0x429bd1.4096
add r11d, 0xffffff00
cmp r11d, 0xd
jb case.0x429bd1.4096
jmp case.0x429bd1.4138
lea edi, [r11 - 0x400]
cmp edi, 5
jb case.0x429bd1.4096
add r11d, 0xfffffd00
cmp r11d, 2
jb case.0x429bd1.4096
jmp case.0x429bd1.4138
mov r9, qword [rsp + 0x60]
lea rdx, [0x00452778]
test cl, 1
je 0x429c81
jmp 0x42b59d
mov r10, qword [rsp + 0x58]
lea rdx, [0x00452778]
mov r9, qword [rsp + 0x60]
mov rdi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x88]
test cl, 1
jne 0x42b59d
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0xc0], r13
cmp byte [rcx], 0
je 0x42b60d
cmp byte [rdi + r8 + 0x48], 0
mov r13w, 0x31
je 0x42a1b4
mov r15, qword [rdi + r8 + 0x38]
test r15, r15
je 0x42a1b4
mov rsi, qword [rdi + r8 + 0x30]
mov rcx, qword [rdi + r8 + 0x40]
xor r8d, r8d
mov qword [rsp + 0xb8], rdx
cmp r8, r15
jae 0x42b5b4
mov rdx, r8
add rdx, 8
jb 0x42b59d
mov r11d, dword [rsi + r8 + 4]
mov r8d, dword [rsi + r8]
lea r9d, [r8 - 0xf3]
cmp r9d, 0xb
jae 0x429d23
cmp rdx, r15
ja 0x42a1a5
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
add rdx, r11
mov r8, rdx
jb 0x42b59d
cmp r8, r15
jne 0x429cce
jmp 0x42a1b4
test r8d, r8d
je 0x429cfa
cmp r8d, 0xf2
je 0x429d3f
cmp r8d, 0xf1
je 0x429cfa
jmp case.0x429bd1.4138
cmp rdx, r15
jae 0x42b5b4
cmp word [rsi + rdx + 4], 0
mov r9, qword [rsp + 0x60]
je 0x429f87
mov r10, rdx
add r10, 0xc
jb 0x42b59d
mov r9d, dword [rsi + rdx]
mov r8d, dword [rsi + rdx + 8]
mov rdi, qword [rsp + 0xa8]
add r8d, r9d
jb 0x42b59d
cmp rax, r9
jb 0x429cfa
mov r8d, r8d
cmp rax, r8
jae 0x429cfa
mov r8, rdx
add r8, r11
jb 0x42b59d
cmp r10, r8
jae 0x429e2e
mov r11, r10
cmp r10, r15
jae 0x42b5b4
mov r10, r11
add r10, 0xc
jb 0x42b59d
mov qword [rsp + 0x90], r11
mov r11d, dword [rsi + r11 + 4]
mov qword [rsp + 0x88], r10
test r11d, r11d
je 0x429e16
xor r12d, r12d
mov rdi, r10
cmp rdi, r15
jae 0x42b5b4
mov r10, rdi
add r10, 8
jb 0x42b59d
mov edi, dword [rsi + rdi]
add edi, r9d
jb 0x42b59d
cmp edi, eax
ja 0x429e1b
inc r12d
mov rdi, r10
cmp r11d, r12d
jne 0x429de3
jmp 0x429e48
xor r12d, r12d
jmp 0x429e23
mov rdi, qword [rsp + 0xa8]
test r12d, r12d
je 0x429da1
jmp 0x429e53
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
je 0x429d19
mov r13w, 0x33
jmp 0x42a1b4
mov rdi, qword [rsp + 0xa8]
mov r12d, r11d
mov rax, qword [rsp + 0x90]
mov eax, dword [rsi + rax]
add rcx, rax
jb 0x42b59d
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
cmp rcx, r15
jae 0x42b5b4
mov eax, dword [rsi + rcx]
add eax, 0xc
jb 0x42b59d
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x42b5e2
movzx edi, word [rsi + rdx + 6]
mov r8d, eax
mov qword [rcx + 8], r8
mov eax, dword [rcx + 0x20]
mul qword [rcx + 0x18]
jo 0x42b59d
cmp rax, r8
jbe 0x429f7d
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rcx + 0x58]
test rax, rax
je 0x42b5e2
vmovups xmm0, xmmword [rcx + 0x48]
mov qword [rsp + 0x3c8], rax
lea rax, [rsp + 0x3c8]
lea rcx, [rsp + 0x9c8]
lea rdx, [rsp + 0x590]
lea r8, [rsp + 0x280]
mov qword [rsp + 0x590], rax
lea rax, [fcn.00413130]
mov qword [rsp + 0x598], rax
vmovaps xmmword [rsp + 0x280], xmm0
vzeroupper
call fcn.00415620
movzx r13d, word [rsp + 0x9d8]
cmp r13, 0x34
ja 0x42b6a2
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
movabs rax, 0x1010ffc2810800
bt rax, r13
jb 0x42a1b4
test r13, r13
jne 0x42b6a2
mov rax, qword [rsp + 0x9c8]
mov rcx, qword [rsp + 0x9d0]
dec r12d
test dil, 1
jne 0x429fff
xor edx, edx
jmp 0x42a055
mov r13w, 0x43
jmp 0x42a1b4
mov r10, qword [rsp + 0x58]
jmp 0x42a1b4
lea rcx, [rdi + 0x23]
mov r12, rcx
vzeroupper
call fcn.004314f0
cmp byte [rdi + rax + 0x23], 0
jne 0x42b638
mov rcx, qword [rsp + 0xa8]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
mov rdi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x88]
mov qword [rsp + 0x178], rax
cmp byte [rcx + 0xa0], 0
je 0x42b5e2
mov eax, dword [r15]
mov rdx, r12
sub rsi, rax
setb cl
mov rax, rsi
test cl, 1
je 0x429c81
jmp 0x42b59d
mov rdx, qword [rsp + 0x90]
mov edx, dword [rsi + rdx + 4]
cmp rdx, 0x20000000
jae 0x42b59d
shl rdx, 3
add rdx, qword [rsp + 0x88]
jb 0x42b59d
cmp r12d, 0x40000000
jae 0x42b59d
lea r8d, [r12*4]
add rdx, r8
jb 0x42b59d
cmp rdx, r15
jae 0x42b5b4
movzx edx, word [rsi + rdx]
cmp r12d, 0x1fffffff
ja 0x42b59d
mov r8, qword [rsp + 0x88]
shl r12d, 3
add r8, r12
jb 0x42b59d
cmp r8, r15
jae 0x42b5b4
mov r9, qword [rsp + 0xb8]
mov r10, qword [rsp + 0x178]
mov r8d, dword [rsi + r8 + 4]
mov r11, qword [rsp + 0xc0]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov qword [rsp + 0x200], r9
mov qword [rsp + 0x208], r10
mov r10, qword [rsp + 0x180]
and r8d, 0xffffff
mov qword [rsp + 0x210], r11
mov qword [rsp + 0x218], r10
mov qword [rsp + 0x220], r8
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], rcx
mov byte [rsp + 0x240], 1
mov word [rsp + 0x248], 0
jmp 0x4287d6
mov r15, qword [rsp + 0x180]
mov rsi, qword [rsp + 0x178]
mov dl, 0xaa
mov rcx, r15
mov r8, rsi
call fcn.0044c710
mov rax, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0x12a38]
mov rdx, r15
mov r8, rsi
xor r9d, r9d
mov rcx, qword [rax + 0x48]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], rdi
call qword [rax + 0x10]
mov rsi, qword [r14]
movabs r15, 0xaaaaaaaaaaaaaaaa
test rsi, rsi
je 0x42a170
mov rax, qword [rsp + 0xb8]
mov r15, qword [rax]
je 0x42a1a0
mov dl, 0xaa
mov rcx, r15
mov r8, rsi
call fcn.0044c710
mov rax, qword [rsp + 0xa8]
mov rdx, r15
mov r8, rsi
xor r9d, r9d
mov rcx, qword [rax + 0x48]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], rdi
call qword [rax + 0x10]
mov r14, qword [rsp + 0x68]
mov r13w, 0x33
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb0]
mov word [rsp + 0x248], r13w
test r13w, r13w
jne 0x428d33
jmp 0x4287c4
vbroadcastss ymm0, dword [0x00450a40]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0xd8]
vmovups ymmword [rsp + 0x320], ymm0
cmp rax, qword [rsp + 0xd0]
jae 0x42b4d3
mov rcx, qword [rsp + 0xc8]
movzx r12d, byte [rcx + rax]
inc rax
mov qword [rsp + 0xd8], rax
cmp r12, 0xb
jb 0x42a318
lea rcx, [rsp + 0xf0]
vzeroupper
call fcn.00424490
lea rcx, [rsp + 0x150]
call fcn.00424490
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
jmp 0x428a84
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0xb8]
mov qword [rax], r15
mov qword [rax + 8], rcx
lea rcx, [rsp + 0x398]
lea rdx, [rsp + 0xc8]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rax + 0x10], ymm0
mov dword [rax + 0x30], 0
vzeroupper
call fcn.00424520
movzx r13d, word [rsp + 0x3a8]
test r13w, r13w
jne 0x4297cf
mov r12, qword [rsp + 0x3a0]
test r12, r12
je 0x42a418
mov r14, qword [rsp + 0x398]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x150]
call fcn.0042ee50
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x120]
mov qword [rax], r14
mov qword [rax + 8], r12
jmp 0x42a288
test r12, r12
je 0x42a390
xor r14d, r14d
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042eff0
mov r13d, dword [rsp + 0x120]
test r13w, r13w
jne 0x4297cf
shr r13d, 0x10
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
mov byte [rsp + r14*4 + 0x322], r13b
call fcn.0042f0e0
mov eax, dword [rsp + 0x120]
mov r13d, eax
shr r13d, 0x10
jne 0x4297cf
mov word [rsp + r14*4 + 0x320], ax
inc r14
cmp r12, r14
jne 0x42a320
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042ed70
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rdx, qword [rsp + 0x120]
lea rcx, [rsp + 0x150]
mov qword [rsp + 0xb8], rdx
call fcn.004248e0
test ax, ax
je 0x42a524
mov r13d, eax
jmp 0x4297cf
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x90]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rax + 8], r15
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r12
mov dword [rax + 0x20], ecx
vmovups xmmword [rax + 0x24], xmm6
lea rcx, [rsp + 0x3b0]
lea rdx, [rsp + 0xc8]
call fcn.00424520
movzx r13d, word [rsp + 0x3c0]
test r13w, r13w
jne 0x4297cf
mov r15, qword [rsp + 0x3b8]
test r15, r15
je 0x42ad28
mov rax, qword [rsp + 0x3b0]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
mov qword [rsp + 0x90], rax
call fcn.0042ef10
mov r13, qword [rsp + 0x120]
mov rax, r13
mov qword [rsp + 0xb8], r13
shr r13, 0x20
test r13w, r13w
jne 0x4297cf
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
call fcn.0042eaa0
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov r14, qword [rsp + 0x120]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
call fcn.0042eaa0
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov r12, qword [rsp + 0x120]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xf0]
call fcn.0042ee50
movzx r13d, word [rsp + 0x128]
test r13w, r13w
je 0x42a3e9
jmp 0x4297cf
cmp qword [rsp + 0xb8], 0
je 0x42a891
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x1d8], rax
xor eax, eax
mov qword [rsp + 0x1c0], rax
vmovaps xmmword [rsp + 0x440], xmm6
test r12b, r12b
je 0x42a7a6
movabs rcx, 0xaaaaaaaaaaaaaaaa
xor eax, eax
mov qword [rsp + 0x1a8], rax
xor eax, eax
mov qword [rsp + 0x198], rax
xor eax, eax
xor r15d, r15d
mov dword [rsp + 0xe8], 0
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x190], rcx
jmp 0x42a5ec
and r8b, 0x1f
cmp r8b, 4
jne 0x42ae88
vmovups xmm0, xmmword [rdx]
vmovaps xmmword [rsp + 0x440], xmm0
mov rax, r15
inc rax
mov r15, rax
cmp r12, rax
je 0x42a7e1
movzx r8d, word [rsp + r15*4 + 0x320]
movzx r9d, byte [rsp + 0x7e]
movzx r14d, byte [rsp + r15*4 + 0x322]
lea rax, [0x00482fd0]
lea rcx, [rsp + 0x478]
lea rdx, [rsp + 0xc8]
mov qword [rsp + 0x20], rax
call fcn.00410840
movzx r13d, word [rsp + 0x490]
test r13w, r13w
jne 0x4297cf
lea r9, [rsp + 0x489]
mov rdx, qword [rsp + 0x478]
mov rax, qword [rsp + 0x480]
movzx r8d, byte [rsp + 0x488]
lea r10, [rsp + 0x301]
dec r14d
mov ecx, dword [r9]
mov r9d, dword [r9 + 3]
mov dword [r10 + 3], r9d
mov dword [r10], ecx
mov qword [rsp + 0x2f0], rdx
mov qword [rsp + 0x2f8], rax
mov byte [rsp + 0x300], r8b
cmp r14d, 4
ja case.default.0x42a6a2
lea rcx, [0x00450fe8]
movsxd rax, dword [rcx + r14*4]
add rax, rcx
jmp rax
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x530]
lea rdx, [rsp + 0x2f0]
call fcn.00424120
movzx r13d, word [rsp + 0x540]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x530]
mov rcx, qword [rsp + 0x538]
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x1a0], rcx
jmp case.default.0x42a6a2
lea rcx, [rsp + 0x270]
call fcn.004241f0
movzx r13d, word [rsp + 0x274]
test r13w, r13w
jne 0x4297cf
mov eax, dword [rsp + 0x270]
mov dword [rsp + 0xe8], eax
jmp case.default.0x42a6a2
lea rcx, [rsp + 0x498]
lea rdx, [rsp + 0x2f0]
call fcn.00423ca0
movzx r13d, word [rsp + 0x4a0]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0x198], rax
jmp case.default.0x42a6a2
lea rcx, [rsp + 0x4a8]
lea rdx, [rsp + 0x2f0]
call fcn.00423ca0
movzx r13d, word [rsp + 0x4b0]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0x1a8], rax
jmp case.default.0x42a6a2
xor eax, eax
mov qword [rsp + 0x1a0], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov dword [rsp + 0xe8], 0
mov qword [rsp + 0x190], rax
xor eax, eax
mov qword [rsp + 0x198], rax
xor eax, eax
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x188]
cmp rax, qword [rsp + 0x1d8]
jae 0x42b60d
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x1e0]
mov r8, qword [rsp + 0x190]
mov r10, qword [rsp + 0x1a0]
mov r11, qword [rsp + 0x198]
mov r9d, dword [rsp + 0xe8]
imul rax, rcx, 0x38
inc rcx
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x188], rcx
mov qword [rdx + rax], r8
mov qword [rdx + rax + 8], r10
mov r10, qword [rsp + 0x1a8]
mov qword [rdx + rax + 0x10], r11
mov r8, qword [rsp + 0x1c0]
mov qword [rdx + rax + 0x18], r10
mov dword [rdx + rax + 0x20], r9d
inc r8
vmovaps xmm0, xmmword [rsp + 0x440]
mov qword [rsp + 0x1c0], r8
vmovups xmmword [rdx + rax + 0x24], xmm0
mov rax, r8
cmp r8, qword [rsp + 0xb8]
jne 0x42a56d
vbroadcastss ymm0, dword [0x00450a40]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x370], rax
mov rax, qword [rsp + 0xd8]
vmovups ymmword [rsp + 0x350], ymm0
cmp rax, qword [rsp + 0xd0]
jae 0x42b4d3
mov rcx, qword [rsp + 0xc8]
movzx r12d, byte [rcx + rax]
inc rax
mov qword [rsp + 0xd8], rax
cmp r12, 0xb
jae 0x42a245
test r12, r12
je 0x42a965
xor r14d, r14d
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042eff0
mov r13d, dword [rsp + 0x120]
test r13w, r13w
jne 0x4297cf
shr r13d, 0x10
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
mov byte [rsp + r14*4 + 0x352], r13b
call fcn.0042f0e0
mov eax, dword [rsp + 0x120]
mov r13d, eax
shr r13d, 0x10
jne 0x4297cf
mov word [rsp + r14*4 + 0x350], ax
inc r14
cmp r12, r14
jne 0x42a8f5
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042ed70
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rdx, qword [rsp + 0x120]
lea rcx, [rsp + 0xf0]
mov qword [rsp + 0xb8], rdx
call fcn.004248e0
test ax, ax
jne 0x42a3e1
cmp qword [rsp + 0xb8], 0
je 0x42ad28
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x1d8], rax
xor eax, eax
mov qword [rsp + 0x1c0], rax
vmovaps xmmword [rsp + 0x450], xmm6
test r12b, r12b
je 0x42ac3d
movabs rcx, 0xaaaaaaaaaaaaaaaa
xor eax, eax
mov qword [rsp + 0x1a8], rax
xor eax, eax
mov qword [rsp + 0x198], rax
xor eax, eax
xor r15d, r15d
mov dword [rsp + 0xe8], 0
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x190], rcx
jmp 0x42aa63
mov rax, r15
inc rax
mov r15, rax
cmp r12, rax
je 0x42ac78
movzx r8d, word [rsp + r15*4 + 0x350]
movzx r9d, byte [rsp + 0x7e]
movzx r14d, byte [rsp + r15*4 + 0x352]
lea rax, [0x00482fd0]
lea rcx, [rsp + 0x250]
lea rdx, [rsp + 0xc8]
mov qword [rsp + 0x20], rax
call fcn.00410840
movzx r13d, word [rsp + 0x268]
test r13w, r13w
jne 0x4297cf
lea r9, [rsp + 0x261]
mov rdx, qword [rsp + 0x250]
mov rax, qword [rsp + 0x258]
movzx r8d, byte [rsp + 0x260]
lea r10, [rsp + 0x319]
dec r14d
mov ecx, dword [r9]
mov r9d, dword [r9 + 3]
mov dword [r10 + 3], r9d
mov dword [r10], ecx
mov qword [rsp + 0x308], rdx
mov qword [rsp + 0x310], rax
mov byte [rsp + 0x318], r8b
cmp r14d, 4
ja case.default.0x42ab19
lea rcx, [0x00450ffc]
movsxd rax, dword [rcx + r14*4]
add rax, rcx
jmp rax
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x548]
lea rdx, [rsp + 0x308]
call fcn.00424120
movzx r13d, word [rsp + 0x558]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x548]
mov rcx, qword [rsp + 0x550]
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x1a0], rcx
jmp case.default.0x42ab19
lea rcx, [rsp + 0x278]
call fcn.004241f0
movzx r13d, word [rsp + 0x27c]
test r13w, r13w
jne 0x4297cf
mov eax, dword [rsp + 0x278]
mov dword [rsp + 0xe8], eax
jmp case.default.0x42ab19
lea rcx, [rsp + 0x4b8]
lea rdx, [rsp + 0x308]
call fcn.00423ca0
movzx r13d, word [rsp + 0x4c0]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0x198], rax
jmp case.default.0x42ab19
lea rcx, [rsp + 0x4c8]
lea rdx, [rsp + 0x308]
call fcn.00423ca0
movzx r13d, word [rsp + 0x4d0]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x4c8]
mov qword [rsp + 0x1a8], rax
jmp case.default.0x42ab19
and r8b, 0x1f
cmp r8b, 4
jne 0x42ae88
vmovups xmm0, xmmword [rdx]
vmovaps xmmword [rsp + 0x450], xmm0
jmp case.default.0x42ab19
xor eax, eax
mov qword [rsp + 0x1a0], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov dword [rsp + 0xe8], 0
mov qword [rsp + 0x190], rax
xor eax, eax
mov qword [rsp + 0x198], rax
xor eax, eax
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x188]
cmp rax, qword [rsp + 0x1d8]
jae 0x42b60d
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x1e0]
mov r8, qword [rsp + 0x190]
mov r10, qword [rsp + 0x1a0]
mov r11, qword [rsp + 0x198]
mov r9d, dword [rsp + 0xe8]
imul rax, rcx, 0x38
inc rcx
mov qword [rsp + 0xf8], rcx
mov qword [rsp + 0x188], rcx
mov qword [rdx + rax], r8
mov qword [rdx + rax + 8], r10
mov r10, qword [rsp + 0x1a8]
mov qword [rdx + rax + 0x10], r11
mov r8, qword [rsp + 0x1c0]
mov qword [rdx + rax + 0x18], r10
mov dword [rdx + rax + 0x20], r9d
inc r8
vmovaps xmm0, xmmword [rsp + 0x450]
mov qword [rsp + 0x1c0], r8
vmovups xmmword [rdx + rax + 0x24], xmm0
mov rax, r8
cmp r8, qword [rsp + 0xb8]
jne 0x42a9ff
vmovaps ymm1, ymmword [0x004509e0]
vmovups xmm0, xmmword [rsp + 0x150]
mov rax, qword [rsp + 0x588]
lea rcx, [rsp + 0x9d0]
cmp byte [rsp + 0xee], 0
movzx r8d, byte [rsp + 0x43f]
mov rdx, qword [rsp + 0x437]
mov byte [rsp + 0x1b7], 0
mov byte [rsp + 0x1b0], 0
mov byte [rsp + 0x1b4], 0
setne byte [rsp + 0x120]
setne byte [rsp + 0x1b6]
vmovups ymmword [rsp + 0x9c8], ymm1
vmovups xmm1, xmmword [rsp + 0x578]
mov qword [rsp + 0x9e8], rsi
vmovups xmmword [rsp + 0x9f0], xmm0
mov qword [rsp + 0xa00], 0
mov qword [rcx + 0x48], rax
movzx eax, word [rsp + 0xec]
vmovups xmmword [rcx + 0x38], xmm1
mov word [rsp + 0xa20], ax
setne byte [rsp + 0xa22]
mov word [rsp + 0xa23], 0
setne byte [rsp + 0xa25]
mov byte [rsp + 0xa26], 0
mov byte [rcx + 0x5f], r8b
mov qword [rcx + 0x57], rdx
mov rcx, qword [rsp + 0x1b8]
cmp qword [rsp + 0xd0], rcx
jae 0x42ae44
lea rcx, [rsp + 0xf0]
vzeroupper
call fcn.00424490
lea rcx, [rsp + 0x150]
call fcn.00424490
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
jmp 0x429111
add qword [rsp + 0x1f0], rdi
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0xd8], rax
jb 0x42b59d
mov rax, qword [rsp + 0x1f0]
cmp qword [rsp + 0x1b8], rax
jae 0x42a245
movzx eax, byte [rsp + 0x7f]
not al
mov byte [rsp + 0x90], al
jmp 0x42aebd
cmp r8b, 0x11
jb 0x42a245
jmp case.0x429bd1.4138
mov qword [rsp + 0x9c8], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x1b8], rax
cmp rax, qword [rsp + 0x1f0]
jae 0x42a245
mov rax, qword [rsp + 0x1b8]
cmp rax, qword [rsp + 0xd0]
jae 0x42b4d3
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x1b8]
movzx eax, byte [rax + rcx]
inc rcx
mov qword [rsp + 0xd8], rcx
test eax, eax
je 0x42af74
cmp al, byte [rsp + 0x7f]
jae 0x42b0c0
lea ecx, [rax - 1]
cmp ecx, 9
ja case.default.0x42af1a
lea rdx, [0x00451010]
movsxd rax, dword [rdx + rcx*4]
add rax, rdx
jmp rax
mov rax, qword [rsp + 0xf8]
mov r9, qword [rsp + 0xf0]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x280]
lea rdx, [rsp + 0x9c8]
mov qword [rsp + 0x20], rax
vzeroupper
call fcn.004242c0
movzx r13d, word [rsp + 0x2a8]
test r13w, r13w
jne 0x4297cf
cmp byte [rsp + 0x2a0], 0
je 0x42b170
jmp 0x42b542
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042eaa0
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x42a245
mov rcx, qword [rsp + 0xd8]
cmp rcx, qword [rsp + 0xd0]
jae 0x42b4d3
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + rcx]
inc rcx
mov qword [rsp + 0xd8], rcx
cmp eax, 3
je 0x42b17d
cmp eax, 2
je 0x42b290
cmp eax, 1
jne 0x42b2cd
mov rax, qword [rsp + 0xf8]
mov r9, qword [rsp + 0xf0]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x2c0]
lea rdx, [rsp + 0x9c8]
mov byte [rsp + 0xa24], 1
mov qword [rsp + 0x20], rax
call fcn.004242c0
movzx r13d, word [rsp + 0x2e8]
test r13w, r13w
jne 0x4297cf
cmp byte [rsp + 0x2e0], 0
jne 0x42b538
vmovaps ymm0, ymmword [0x004509e0]
lea rdx, [rsp + 0x9d0]
movabs rcx, 0xaaaaaaaaaaaaaaaa
vmovups ymmword [rsp + 0x9c8], ymm0
movzx eax, byte [rsp + 0xa25]
mov byte [rsp + 0xa22], al
mov word [rsp + 0xa23], 0
mov byte [rsp + 0xa26], 0
mov qword [rsp + 0xa00], 0
mov word [rsp + 0xa27], 0xaaaa
mov byte [rsp + 0xa29], 0xaa
vmovups xmmword [rdx + 0x38], xmm7
mov qword [rdx + 0x48], rcx
jmp case.0x42af1a.10
sub al, byte [rsp + 0x7f]
movzx eax, al
div byte [rsp + 0x86]
movzx edx, ah
mov ecx, eax
mov rax, qword [rsp + 0x1e8]
mul cl
jo 0x42b59d
movzx ecx, dl
add rcx, qword [rsp + 0x388]
add rcx, qword [rsp + 0x9d8]
jo 0x42b59d
mov qword [rsp + 0x9d8], rcx
movzx eax, al
add rax, qword [rsp + 0x9c8]
jb 0x42b59d
mov rcx, qword [rsp + 0xf8]
mov r9, qword [rsp + 0xf0]
mov r8, qword [rsp + 0x68]
lea rdx, [rsp + 0x9c8]
mov qword [rsp + 0x9c8], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x3c8]
vzeroupper
call fcn.004242c0
movzx r13d, word [rsp + 0x3f0]
test r13w, r13w
jne 0x4297cf
cmp byte [rsp + 0x3e8], 0
jne 0x42b52e
mov byte [rsp + 0xa23], 0
jmp case.0x42af1a.10
lea rcx, [rsp + 0x560]
lea rdx, [rsp + 0xc8]
call fcn.00424520
movzx r13d, word [rsp + 0x570]
test r13w, r13w
jne 0x4297cf
mov r15, qword [rsp + 0x560]
mov r14, qword [rsp + 0x568]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
call fcn.0042ef10
mov r12, qword [rsp + 0x120]
mov r13, r12
shr r13, 0x20
test r13w, r13w
jne 0x4297cf
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
call fcn.0042eaa0
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rsi, qword [rsp + 0x120]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
call fcn.0042eaa0
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rdi, qword [rsp + 0x120]
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xf0]
call fcn.0042ee50
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x120]
mov qword [rax], r15
mov qword [rax + 8], r14
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov dword [rax + 0x20], r12d
vmovups xmmword [rax + 0x24], xmm6
jmp case.0x42af1a.10
lea rcx, [rsp + 0x4d8]
lea rdx, [rsp + 0xc8]
call fcn.00411f10
movzx r13d, word [rsp + 0x4e0]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0x9c8], rax
jmp case.0x42af1a.10
dec rdx
jmp 0x42b2f1
dec al
movzx eax, al
cmp qword [rsp + 0x380], rax
jbe 0x42a245
mov rcx, qword [rsp + 0x378]
movzx edx, byte [rcx + rax]
lea rcx, [rsp + 0xc8]
vzeroupper
call fcn.00424940
test ax, ax
je case.0x42af1a.10
jmp 0x42a3e1
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042ed70
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x120]
mul qword [rsp + 0x1e8]
jo 0x42b59d
add rax, qword [rsp + 0x9c8]
jae 0x42ae97
jmp 0x42b59d
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042eb80
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x120]
add rax, qword [rsp + 0x9d8]
jo 0x42b59d
mov qword [rsp + 0x9d8], rax
jmp case.0x42af1a.10
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042ed70
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x9d0], rax
jmp case.0x42af1a.10
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.0042eaa0
movzx r13d, word [rsp + 0x128]
test r13w, r13w
jne 0x4297cf
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x9e0], rax
jmp case.0x42af1a.10
movzx eax, byte [rsp + 0xa22]
not al
and al, 1
mov byte [rsp + 0xa22], al
jmp case.0x42af1a.10
mov byte [rsp + 0xa23], 1
jmp case.0x42af1a.10
movzx eax, byte [rsp + 0x90]
div byte [rsp + 0x86]
mov ecx, eax
mov rax, qword [rsp + 0x1e8]
mul cl
jo 0x42b59d
movzx eax, al
add rax, qword [rsp + 0x9c8]
jae 0x42ae97
jmp 0x42b59d
lea rcx, [rsp + 0x1d4]
lea rdx, [rsp + 0xc8]
vzeroupper
call fcn.00411fa0
movzx r13d, word [rsp + 0x1d6]
test r13w, r13w
jne 0x4297cf
movzx eax, word [rsp + 0x1d4]
add rax, qword [rsp + 0x9c8]
jae 0x42ae97
jmp 0x42b59d
lea rcx, [rsp + 0xf0]
vzeroupper
call fcn.00424490
lea rcx, [rsp + 0x150]
call fcn.00424490
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x1c8]
mov rsi, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
mov r13w, 0x36
jmp 0x428cca
lea rax, [rsp + 0x3c8]
jmp 0x42b54a
lea rax, [rsp + 0x2c0]
jmp 0x42b54a
lea rax, [rsp + 0x280]
vmovups ymm0, ymmword [rax]
lea rcx, [rsp + 0xf0]
vmovups ymmword [rsp + 0x120], ymm0
vzeroupper
call fcn.00424490
lea rcx, [rsp + 0x150]
call fcn.00424490
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov byte [rsp + 0x140], 1
lea rax, [rsp + 0x120]
jmp 0x428a8b
mov r13w, 0x1f
jmp 0x427ea3
lea rcx, str.integer_overflow
mov edx, 0x10
xor r9d, r9d
vzeroupper
call fcn.00401000
lea rcx, str.index_out_of_bounds
mov edx, 0x13
xor r9d, r9d
vzeroupper
call fcn.00401000
lea rcx, str.incorrect_alignment
mov edx, 0x13
xor r9d, r9d
vzeroupper
call fcn.00401000
lea rcx, str.attempt_to_use_null_value
mov edx, 0x19
xor r9d, r9d
vzeroupper
call fcn.00401000
lea rcx, str.cast_causes_pointer_to_be_null
mov edx, 0x1e
xor r9d, r9d
call fcn.00401000
lea rcx, [0x0045177e]
mov edx, 0x18
xor r9d, r9d
vzeroupper
call fcn.00401000
lea rcx, str._memcpy_arguments_alias
mov edx, 0x17
xor r9d, r9d
call fcn.00401000
lea rcx, str.sentinel_mismatch
mov edx, 0x11
xor r9d, r9d
call fcn.00401000
lea rcx, str.integer_cast_truncated_bits
mov edx, 0x1b
xor r9d, r9d
call fcn.00401000
lea rcx, str.attempt_to_unwrap_error
mov edx, 0x17
xor r9d, r9d
call fcn.00401000
lea rcx, str.switch_on_corrupt_value
mov edx, 0x17
xor r9d, r9d
vzeroupper
call fcn.00401000
lea rcx, str.start_index_is_larger_than_end_index
mov edx, 0x24
xor r9d, r9d
vzeroupper
call fcn.00401000
lea rcx, str.invalid_error_code
mov edx, 0x12
xor r9d, r9d
call fcn.00401000
int3