Function at 0x4d5a10
Capabilities:
Encode data using xor
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x148
movaps xmmword [rsp + 0x130], xmm6
mov rsi, rdx
mov r12, rcx
mov rax, qword [rcx + 0x28]
mov qword [rsp + 0x40], rax
mov r13, qword [rax]
mov al, byte [rdx]
cmp al, 0x3b
mov qword [rsp + 0x30], rdx
jae 0x4d5a65
cmp al, 0x31
jae 0x4d6bd6
cmp al, 0x2d
jae 0x4d6d2d
cmp al, 0x14
je 0x4d6e6a
jmp 0x4d895c
cmp al, 0x8d
jae 0x4d6cdf
cmp al, 0x4b
jae 0x4d6d3f
cmp al, 0x3b
jne 0x4d895c
mov r11, r13
mov r13, qword [rsi + 8]
mov rax, qword [r11]
mov qword [rsp + 0x80], rax
lea rax, [rsi + 0x2c]
mov qword [rsp + 0xa0], rax
mov dword [rsi + 0x2c], 0xffffffff
xor r14d, r14d
xor eax, eax
mov qword [rsp + 0x98], rax
xor ebx, ebx
test r14, r14
sete al
mov qword [rsp + 0xe8], rax
lea rax, [rsi + 0x40]
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x68], r11
lea rax, [r11 + 0xa8]
mov qword [rsp + 0xf0], rax
lea rax, [r13 + 1]
mov qword [rsp + 0x100], rax
lea r10, [0x005fade0]
lea r11, [0x006034f1]
xorps xmm6, xmm6
xor eax, eax
mov qword [rsp + 0x58], rax
xor ebp, ebp
mov dword [rsp + 0xa8], 0
mov dword [rsp + 0x94], 0
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x50], rbx
jmp 0x4d5b5e
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x18]
add dword [rsp + 0xa8], 1
test rax, rax
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x88]
lea r10, [0x005fade0]
je 0x4d7485
mov rcx, rax
mov qword [rsp + 0x70], rax
mov rdi, qword [rax + 8]
test rdi, rdi
je 0x4d64fc
cmp dword [rdi], 0
jle 0x4d650d
lea rcx, [rdi + 8]
mov dword [rsp + 0xac], 0
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x78], rdi
jmp 0x4d5bd7
mov dword [rsp + 0x94], 2
lea r11, [0x006034f1]
mov r14, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x78]
mov eax, dword [rsp + 0xac]
add eax, 1
mov rcx, qword [rsp + 0x48]
add rcx, 0x68
mov dword [rsp + 0xac], eax
cmp eax, dword [rdi]
jge 0x4d6514
mov r9, qword [rcx + 0x20]
mov eax, dword [rcx + 0x40]
not eax
or eax, 0xffffdfff
cmp eax, 0xffffffff
mov qword [rsp + 0x48], rcx
je 0x4d5f26
mov qword [rsp + 0x108], r9
mov rax, qword [rcx + 0x28]
mov r12, qword [rax + 0x20]
mov r15d, dword [r12]
test r15d, r15d
jle 0x4d5ee0
xor edi, edi
mov dword [rsp + 0x88], 0
jmp 0x4d5c37
lea r10, [0x005fade0]
add rdi, 1
movsxd rax, r15d
cmp rdi, rax
jge 0x4d5eeb
mov r14, rdi
shl r14, 5
lea rcx, [r12 + r14]
add rcx, 8
mov rdx, r13
mov r8, qword [rsp + 0x60]
mov r9, rbx
call fcn.004da1f0
test eax, eax
je 0x4d5c20
mov r11, qword [rsp + 0x38]
test r11d, r11d
lea r10, [0x005fade0]
jle 0x4d5e90
mov r9, rbp
mov rbp, qword [rsp + 0x48]
mov eax, dword [rbp + 0x40]
mov ecx, eax
xor ecx, 0xfffffbff
test ecx, eax
je 0x4d5de0
mov rax, qword [rbp + 0x48]
mov r8d, dword [rax]
test r8d, r8d
jle 0x4d5de0
xor edx, edx
mov rcx, rdx
shl rcx, 4
mov rbx, qword [rax + rcx + 8]
xor esi, esi
jmp 0x4d5cc0
movzx ecx, byte [rcx + r10]
cmp cl, byte [rbp + r10]
jne 0x4d5ce0
add rsi, 1
movzx ecx, byte [rbx + rsi]
movzx ebp, byte [r13 + rsi]
cmp cl, bpl
jne 0x4d5cb0
test cl, cl
jne 0x4d5cbc
jmp 0x4d5cfd
add rdx, 1
cmp rdx, r8
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
jne 0x4d5c9c
jmp 0x4d5de0
test edx, edx
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
js 0x4d5de0
movzx eax, byte [rbp + 0x3c]
mov ecx, eax
xor ecx, 0xef
test ecx, eax
je 0x4d5e0f
mov ecx, eax
xor ecx, 0xf7
test ecx, eax
je 0x4d5e17
mov rbp, r9
movzx esi, word [rsi + 0x30]
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
mov edx, 0x48
call fcn.00429840
test rax, rax
je 0x4d5e41
movups xmmword [rax], xmm6
movups xmmword [rax + 0x30], xmm6
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x10], xmm6
mov qword [rax + 0x40], 0
mov byte [rax], 0xa7
mov word [rax + 0x32], 0xffff
mov dword [rax + 0x28], 1
mov ecx, dword [rbp + 0x44]
mov dword [rax + 0x2c], ecx
mov word [rax + 0x30], si
mov rcx, qword [rbp + 0x20]
mov qword [rax + 0x40], rcx
mov dword [rax + 4], 0x200000
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x4d5e48
movsxd rcx, dword [rdx]
cmp dword [rdx + 4], ecx
mov rsi, qword [rsp + 0x30]
jle 0x4d5e64
lea ebp, [rcx + 1]
mov dword [rdx], ebp
shl rcx, 5
movups xmmword [rdx + rcx + 0x10], xmm6
mov qword [rdx + rcx + 0x20], 0
mov qword [rdx + rcx + 8], rax
jmp 0x4d5e79
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x4d5e03
mov rcx, qword [rsp + 0x80]
call fcn.0047fbe0
mov r11, qword [rsp + 0x38]
lea r10, [0x005fade0]
xor eax, eax
mov qword [rsp + 0x58], rax
jmp 0x4d5e95
mov rbp, r9
jmp 0x4d5c27
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x4d5e35
mov rcx, qword [rsp + 0x80]
call fcn.0047fbe0
lea r10, [0x005fade0]
xor eax, eax
mov qword [rsp + 0x58], rax
xor r11d, r11d
jmp 0x4d5e90
mov rsi, qword [rsp + 0x30]
jmp 0x4d5e79
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov rdx, rax
call fcn.0050cd80
mov qword [rsp + 0x58], rax
mov rsi, qword [rsp + 0x30]
jmp 0x4d5e79
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov r8, rax
call fcn.0050ce50
mov qword [rsp + 0x58], rax
lea r10, [0x005fade0]
mov r11, qword [rsp + 0x38]
nop word cs:[rax + rax]
nop
mov rbp, qword [rsp + 0x48]
add r11d, 1
mov qword [rsp + 0x38], r11
mov word [rsi + 0x30], di
mov eax, dword [r12 + r14 + 0x1c]
mov ecx, eax
and ecx, 0x40
mov edx, eax
xor edx, 0x40
or edx, ecx
mov dword [r12 + r14 + 0x1c], edx
test al, al
js 0x4d5b99
mov r15d, dword [r12]
mov dword [rsp + 0x94], 2
mov dword [rsp + 0x88], 1
jmp 0x4d5c27
mov dword [rsp + 0x88], 0
mov r14, qword [rsp + 0x60]
test r14, r14
setne al
cmp dword [rsp + 0x88], 0
setne cl
cmp al, cl
je 0x4d5fa5
test r14, r14
lea r11, [0x006034f1]
mov rdi, qword [rsp + 0x78]
mov r9, qword [rsp + 0x108]
je 0x4d5bb5
test r14, r14
mov qword [rsp + 0x88], rbp
je 0x4d6020
test rbx, rbx
je 0x4d5f57
mov rax, qword [rsp + 0x98]
cmp qword [r9 + 0x60], rax
jne 0x4d5bb5
test rax, rax
je 0x4d606d
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x18]
mov rcx, rdi
test rdi, rdi
jne 0x4d5f6b
mov rcx, qword [r9]
xor edx, edx
jmp 0x4d5f79
test bpl, bpl
je 0x4d5fb1
add rdx, 1
movzx ebp, byte [rcx + rdx]
movzx ebx, byte [r14 + rdx]
cmp bpl, bl
je 0x4d5f70
movzx eax, byte [rbp + r10]
cmp al, byte [rbx + r10]
je 0x4d5f75
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x88]
jmp 0x4d5bb0
lea r11, [0x006034f1]
jmp 0x4d5bb0
test rdi, rdi
sete dl
setne al
mov rcx, qword [rsp + 0x68]
mov cl, byte [rcx + 0x124]
cmp cl, 2
setb bl
cmp cl, 1
seta cl
cmp dl, bl
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x78]
jne 0x4d6020
or al, cl
xor al, 1
jne 0x4d6020
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x190]
test rax, rax
je 0x4d6020
nop
mov rcx, qword [rsp + 0xf8]
cmp qword [rax], rcx
je 0x4d60a1
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x4d6000
nop
test r13, r13
je 0x4d60b1
mov cl, byte [r13]
xor eax, eax
test cl, cl
je 0x4d6052
mov rdx, qword [rsp + 0x100]
nop
movzx ecx, cl
add al, byte [rcx + r10]
movzx ecx, byte [rdx]
add rdx, 1
test cl, cl
jne 0x4d6040
movzx r8d, word [r9 + 0x36]
test r8w, r8w
jg 0x4d60be
cmp dword [rsp + 0x38], 0
jne 0x4d5bb5
jmp 0x4d63e5
mov rcx, rbx
lea rdx, [0x0060343c]
mov r15, r11
mov rdi, r9
call fcn.005f4bf0
mov r9, rdi
mov r11, r15
mov rdi, qword [rsp + 0x78]
lea r10, [0x005fade0]
test eax, eax
jne 0x4d5bb5
jmp 0x4d5f57
mov qword [rax], 0
test r13, r13
jne 0x4d6029
xor eax, eax
movzx r8d, word [r9 + 0x36]
test r8w, r8w
jle 0x4d605d
mov r11, qword [r9 + 8]
cmp dword [rsp + 0x38], 0
jle 0x4d629c
xor r14d, r14d
jmp 0x4d60f1
add r14d, 1
add r11, 0x18
cmp r14d, r8d
je 0x4d630f
cmp byte [r11 + 0xe], al
jne 0x4d60e0
mov rcx, qword [r11]
xor ebx, ebx
jmp 0x4d6109
test dil, dil
je 0x4d6130
add rbx, 1
movzx edi, byte [rcx + rbx]
movzx esi, byte [r13 + rbx]
cmp dil, sil
je 0x4d6100
movzx edx, byte [rdi + r10]
cmp dl, byte [rsi + r10]
je 0x4d6105
jmp 0x4d60e0
mov r15, r9
mov rsi, qword [rsp + 0x48]
mov ecx, dword [rsi + 0x40]
mov edx, ecx
xor edx, 0xfffffbff
test edx, ecx
je 0x4d633a
mov r10, qword [rsi + 0x48]
mov r9d, dword [r10]
test r9d, r9d
jle 0x4d633a
xor ecx, ecx
mov rdx, rcx
shl rdx, 4
mov rdi, qword [r10 + rdx + 8]
xor esi, esi
jmp 0x4d6178
test bl, bl
je 0x4d61b0
add rsi, 1
movzx ebx, byte [rdi + rsi]
movzx ebp, byte [r13 + rsi]
cmp bl, bpl
je 0x4d6170
lea r12, [0x005fade0]
movzx edx, byte [rbx + r12]
cmp dl, byte [rbp + r12]
je 0x4d6174
add rcx, 1
cmp rcx, r9
mov rsi, qword [rsp + 0x48]
jne 0x4d615d
jmp 0x4d633a
test ecx, ecx
mov rsi, qword [rsp + 0x48]
js 0x4d633a
mov cl, byte [rsi + 0x3c]
mov edx, ecx
not dl
or dl, 0xef
cmp dl, 0xff
mov rbp, qword [rsp + 0x88]
lea r10, [0x005fade0]
mov r9, r15
je 0x4d60e0
mov eax, ecx
xor al, 0xf7
test al, cl
je 0x4d6432
mov rax, qword [rsp + 0x30]
movzx esi, word [rax + 0x30]
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
mov edx, 0x48
call fcn.00429840
test rax, rax
mov rdi, qword [rsp + 0x78]
je 0x4d648b
movups xmmword [rax], xmm6
movups xmmword [rax + 0x30], xmm6
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x10], xmm6
mov qword [rax + 0x40], 0
mov byte [rax], 0xa7
mov word [rax + 0x32], 0xffff
mov dword [rax + 0x28], 1
mov ecx, dword [rbp + 0x44]
mov dword [rax + 0x2c], ecx
mov word [rax + 0x30], si
mov rcx, qword [rbp + 0x20]
mov qword [rax + 0x40], rcx
mov dword [rax + 4], 0x200000
mov rdx, qword [rsp + 0x58]
test rdx, rdx
mov rbx, qword [rsp + 0x50]
je 0x4d64ad
movsxd rcx, dword [rdx]
cmp dword [rdx + 4], ecx
mov r12, qword [rsp + 0x30]
jle 0x4d64c9
lea ebp, [rcx + 1]
mov dword [rdx], ebp
shl rcx, 5
movups xmmword [rdx + rcx + 0x10], xmm6
mov qword [rdx + rcx + 0x20], 0
mov qword [rdx + rcx + 8], rax
jmp 0x4d64de
xor r14d, r14d
jmp 0x4d62c1
add r14d, 1
add r11, 0x18
cmp r14d, r8d
je 0x4d641b
cmp byte [r11 + 0xe], al
jne 0x4d62b0
mov rcx, qword [r11]
xor ebx, ebx
jmp 0x4d62e0
movzx edx, byte [rdi + r10]
cmp dl, byte [rbp + r10]
jne 0x4d62b0
add rbx, 1
movzx edi, byte [rcx + rbx]
movzx ebp, byte [r13 + rbx]
cmp dil, bpl
jne 0x4d62d0
test dil, dil
jne 0x4d62dc
mov rbx, qword [rsp + 0x50]
lea r11, [0x006034f1]
mov rdi, qword [rsp + 0x78]
mov rdx, rsi
mov rsi, qword [rsp + 0x48]
jmp 0x4d6378
mov rsi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
lea r11, [0x006034f1]
mov rdi, qword [rsp + 0x78]
cmp dword [rsp + 0x38], 0
jne 0x4d5bb5
jmp 0x4d63e5
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x4d6351
mov rcx, qword [rsp + 0x80]
call fcn.0047fbe0
xor eax, eax
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x50]
lea r10, [0x005fade0]
lea r11, [0x006034f1]
mov rdi, qword [rsp + 0x78]
mov r9, r15
mov rax, qword [rsp + 0x38]
add eax, 1
mov qword [rsp + 0x38], rax
movsx eax, word [r9 + 0x34]
cmp r14d, eax
mov eax, r14d
mov ecx, 0xffff
cmove eax, ecx
mov r8, rdx
mov word [rdx + 0x30], ax
mov eax, dword [rsi + 0x40]
not eax
or eax, 0xffffdfff
cmp eax, 0xffffffff
je 0x4d63cf
mov rax, qword [rsi + 0x28]
mov rax, qword [rax + 0x20]
mov ecx, r14d
shl rcx, 5
mov edx, dword [rax + rcx + 0x1c]
mov ebp, edx
and ebp, 0x40
xor edx, 0x40
or edx, ebp
mov dword [rax + rcx + 0x1c], edx
mov rbp, rsi
mov r14, qword [rsp + 0x60]
mov rsi, r8
cmp dword [rsp + 0x38], 0
jne 0x4d5bb5
mov eax, dword [r9 + 0x30]
mov ecx, eax
xor ecx, 0xfffffdff
and ecx, eax
cmove rbp, qword [rsp + 0x48]
shr ecx, 9
mov eax, ecx
not eax
and eax, 1
and ecx, 0xfffffffe
or ecx, eax
add dword [rsp + 0x94], ecx
xor eax, eax
mov qword [rsp + 0x38], rax
jmp 0x4d5bb5
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x88]
jmp 0x4d631e
mov rdx, qword [rsp + 0x58]
test rdx, rdx
mov rbp, qword [rsp + 0x30]
lea r11, [0x006034f1]
mov rdi, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x48]
je 0x4d6470
mov rcx, qword [rsp + 0x80]
call fcn.0047fbe0
mov r9, r15
lea r11, [0x006034f1]
lea r10, [0x005fade0]
xor eax, eax
mov qword [rsp + 0x58], rax
xor eax, eax
mov qword [rsp + 0x38], rax
mov rbx, qword [rsp + 0x50]
mov rdx, rbp
jmp 0x4d6378
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x50]
lea r10, [0x005fade0]
lea r11, [0x006034f1]
mov rsi, qword [rsp + 0x48]
jmp 0x4d6375
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov rdx, rax
call fcn.0050cd80
mov qword [rsp + 0x58], rax
mov r12, qword [rsp + 0x30]
jmp 0x4d64de
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov r8, rax
call fcn.0050ce50
mov qword [rsp + 0x58], rax
lea r10, [0x005fade0]
lea r11, [0x006034f1]
mov rsi, qword [rsp + 0x48]
mov r9, r15
mov rdx, r12
jmp 0x4d6378
xor eax, eax
mov qword [rsp + 0x38], rax
test rbx, rbx
je 0x4d6583
jmp 0x4d661f
xor eax, eax
mov qword [rsp + 0x38], rax
test rbp, rbp
je 0x4d6578
mov eax, dword [rbp + 0x44]
mov dword [rsi + 0x2c], eax
mov rax, qword [rbp + 0x20]
mov qword [rsi + 0x40], rax
mov cl, byte [rbp + 0x3c]
not cl
or cl, 0xb7
cmp cl, 0xff
je 0x4d6562
mov edx, dword [rsi + 4]
mov rdi, rbp
mov ebp, edx
not ebp
and ebp, 0xc7124f51
mov ecx, edx
and ecx, 0x38edb0ae
or ecx, ebp
mov rbp, rdi
xor ecx, 0xc7324f51
and edx, 0x200000
or edx, ecx
mov dword [rsi + 4], edx
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x98], rax
test rbx, rbx
je 0x4d6583
jmp 0x4d661f
xor ebp, ebp
test rbx, rbx
jne 0x4d661f
cmp dword [rsp + 0x38], 0
jne 0x4d661f
mov al, 1
test al, al
je 0x4d661f
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
test rcx, rcx
je 0x4d6709
mov r10, rbp
mov rax, qword [rsp + 0x68]
mov r8b, byte [rax + 0xd4]
cmp byte [rax + 0xd5], 0
je 0x4d6629
mov rax, qword [rsp + 0x70]
mov ebp, dword [rax + 0x28]
mov edx, ebp
xor edx, 0xfffffbff
test edx, ebp
je 0x4d6728
test r14, r14
je 0x4d6735
mov rdx, qword [rcx]
xor ebp, ebp
jmp 0x4d65fc
test bl, bl
je 0x4d6735
add rbp, 1
movzx ebx, byte [r14 + rbp]
movzx edi, byte [rdx + rbp]
cmp bl, dil
je 0x4d65f0
lea rax, [0x005fade0]
movzx ebx, byte [rbx + rax]
cmp bl, byte [rdi + rax]
je 0x4d65f8
jmp 0x4d6ba8
mov rax, qword [rsp + 0x38]
jmp 0x4d699d
test r14, r14
setne dl
cmp r8b, 0x80
sete bl
cmp dl, bl
je 0x4d6692
test r14, r14
je 0x4d6692
xor edx, edx
jmp 0x4d6665
lea rdi, [0x005fade0]
movzx eax, byte [rbp + rdi]
cmp al, byte [rbx + rdi]
jne 0x4d6692
add rdx, 1
lea rax, [0x0060343e]
movzx ebp, byte [rdx + rax]
movzx ebx, byte [r14 + rdx]
cmp bpl, bl
jne 0x4d6650
test bpl, bpl
jne 0x4d6661
mov rax, qword [rsp + 0xa0]
mov dword [rax], 1
jmp 0x4d6748
test r14, r14
je 0x4d6ba8
cmp r8b, 0x7f
mov rbx, qword [rsp + 0x50]
mov rbp, r10
je 0x4d6709
mov r9d, 0
mov al, 1
test al, al
je 0x4d6753
xor eax, eax
jmp 0x4d66d5
lea rdi, [0x005fade0]
movzx edx, byte [rdx + rdi]
cmp dl, byte [rbp + rdi]
jne 0x4d6728
add rax, 1
lea rdx, [0x00603442]
movzx edx, byte [rax + rdx]
movzx ebp, byte [r14 + rax]
cmp dl, bpl
jne 0x4d66c0
test dl, dl
jne 0x4d66d1
mov rax, qword [rsp + 0xa0]
mov dword [rax], 0
mov r9, rcx
mov rbp, r10
test r14, r14
jne 0x4d6758
jmp 0x4d6711
xor r9d, r9d
test r14, r14
jne 0x4d6758
lea r10, [0x005fade0]
test r9, r9
jne 0x4d67e1
xor eax, eax
jmp 0x4d699d
xor r9d, r9d
mov rbp, r10
test r14, r14
jne 0x4d6758
jmp 0x4d6711
xor edx, edx
cmp r8b, 0x80
setne dl
mov rax, qword [rsp + 0xa0]
mov dword [rax], edx
mov r9, rcx
mov rbx, qword [rsp + 0x50]
mov rbp, r10
test r14, r14
je 0x4d6711
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x28]
mov ecx, 0x200
and eax, ecx
lea r10, [0x005fade0]
je 0x4d67d8
mov al, 1
test al, al
je 0x4d67d8
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x4d67d8
mov rdi, rbp
xor edx, edx
jmp 0x4d67a5
movzx ebx, byte [rbp + r10]
cmp bl, byte [rax + r10]
mov rbx, qword [rsp + 0x50]
jne 0x4d67d5
add rdx, 1
lea rax, [0x00603446]
movzx ebp, byte [rdx + rax]
movzx eax, byte [r14 + rdx]
cmp bpl, al
jne 0x4d6790
test bpl, bpl
jne 0x4d67a1
mov rax, qword [rcx + 0x40]
mov r9, qword [rax + 0x28]
mov rax, qword [rsp + 0xa0]
mov dword [rax], 2
mov rbp, rdi
test r9, r9
je 0x4d6721
xor ecx, ecx
mov r10, rbp
test r13, r13
je 0x4d6824
mov dl, byte [r13]
xor ebx, ebx
test dl, dl
je 0x4d6826
mov rbp, qword [rsp + 0x100]
lea rdi, [0x005fade0]
nop dword [rax]
movzx eax, dl
add bl, byte [rax + rdi]
movzx edx, byte [rbp]
add rbp, 1
test dl, dl
jne 0x4d6810
jmp 0x4d6826
xor ebx, ebx
mov r15, qword [r9 + 8]
mov rax, qword [r9 + 0x60]
mov qword [rsp + 0x98], rax
movsx r8d, word [r9 + 0x36]
test r8d, r8d
jle 0x4d68af
mov r12, r11
xor ecx, ecx
mov r11, r15
jmp 0x4d685a
add ecx, 1
add r11, 0x18
cmp ecx, r8d
je 0x4d6bc1
cmp byte [r11 + 0xe], bl
jne 0x4d684a
mov rdi, qword [r11]
xor esi, esi
jmp 0x4d6885
lea rdx, [0x005fade0]
movzx eax, byte [rax + rdx]
cmp al, byte [rbp + rdx]
jne 0x4d684a
add rsi, 1
movzx eax, byte [rdi + rsi]
movzx ebp, byte [r13 + rsi]
cmp al, bpl
jne 0x4d6870
test al, al
jne 0x4d6881
movsx eax, word [r9 + 0x34]
cmp ecx, eax
mov eax, 0xffffffff
cmove ecx, eax
mov rsi, qword [rsp + 0x30]
mov r11, r12
cmp ecx, r8d
mov rbx, qword [rsp + 0x50]
jl 0x4d6980
xor edx, edx
jmp 0x4d68dc
test al, al
je 0x4d696f
add rdx, 1
movzx eax, byte [r13 + rdx]
lea rdi, [0x00607536]
movzx ebp, byte [rdx + rdi]
cmp al, bpl
je 0x4d68d0
lea rdi, [0x005fade0]
movzx eax, byte [rax + rdi]
cmp al, byte [rbp + rdi]
je 0x4d68d8
xor edx, edx
jmp 0x4d6918
test al, al
je 0x4d696f
add rdx, 1
movzx eax, byte [r13 + rdx]
movzx ebp, byte [rdx + r11]
cmp al, bpl
je 0x4d6910
lea rdi, [0x005fade0]
movzx eax, byte [rax + rdi]
cmp al, byte [rbp + rdi]
je 0x4d6914
xor edx, edx
jmp 0x4d6955
lea rdi, [0x005fade0]
movzx eax, byte [rax + rdi]
cmp al, byte [rbp + rdi]
jne 0x4d6980
add rdx, 1
movzx eax, byte [r13 + rdx]
lea rdi, [0x0060753e]
movzx ebp, byte [rdx + rdi]
cmp al, bpl
jne 0x4d6940
test al, al
jne 0x4d6951
mov eax, dword [r9 + 0x30]
not eax
or eax, 0xfffffdff
cmp eax, 0xffffffff
cmove ecx, eax
cmp ecx, r8d
jl 0x4d7536
mov rbp, r10
add dword [rsp + 0x94], 1
xor eax, eax
lea r10, [0x005fade0]
mov r12, rax
test eax, eax
sete al
cmp dword [rsp + 0x94], 1
sete cl
xor al, cl
not al
and al, cl
test rbp, rbp
setne cl
xor al, 1
cmp cl, al
je 0x4d6a8f
test rbp, rbp
je 0x4d6a8f
mov rax, qword [rsp + 0x70]
mov r9d, dword [rax + 0x28]
mov eax, r9d
xor eax, 0xffffffd7
test eax, r9d
jne 0x4d6aa3
xor eax, eax
jmp 0x4d69fc
test cl, cl
je 0x4d6a78
add rax, 1
movzx ecx, byte [r13 + rax]
lea rdx, [0x00607536]
movzx edx, byte [rax + rdx]
cmp cl, dl
je 0x4d69f0
movzx ecx, byte [rcx + r10]
cmp cl, byte [rdx + r10]
je 0x4d69f8
xor eax, eax
jmp 0x4d6a28
test cl, cl
je 0x4d6a78
add rax, 1
movzx ecx, byte [r13 + rax]
movzx edx, byte [rax + r11]
cmp cl, dl
je 0x4d6a20
movzx ecx, byte [rcx + r10]
cmp cl, byte [rdx + r10]
je 0x4d6a24
xor eax, eax
jmp 0x4d6a5f
movzx ecx, byte [rcx + r10]
cmp cl, byte [rdx + r10]
jne 0x4d6a8f
add rax, 1
movzx ecx, byte [r13 + rax]
lea rdx, [0x0060753e]
movzx edx, byte [rax + rdx]
cmp cl, dl
jne 0x4d6a50
test cl, cl
jne 0x4d6a5b
mov rax, qword [rbp + 0x20]
mov eax, dword [rax + 0x30]
not eax
or eax, 0xfffffdff
cmp eax, 0xffffffff
je 0x4d7956
mov rax, r12
test eax, eax
jne 0x4d74d6
mov rax, qword [rsp + 0x70]
mov r9d, dword [rax + 0x28]
mov qword [rsp + 0x88], rbp
test r14, r14
sete al
test r9b, r9b
setns cl
cmp al, cl
je 0x4d5b30
test r14, r14
jne 0x4d5b30
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x10]
mov r12d, dword [rdx]
test r12d, r12d
jle 0x4d5b30
test r13, r13
je 0x4d6b6d
xor r8d, r8d
jmp 0x4d6b00
add r8, 1
cmp r8, r12
mov rsi, qword [rsp + 0x30]
mov r11, r15
je 0x4d5b30
mov r15, r11
mov rcx, r8
shl rcx, 5
mov rax, qword [rdx + rcx + 0x10]
mov ecx, dword [rdx + rcx + 0x1c]
not ecx
or ecx, 0xfffffffc
cmp ecx, 0xffffffff
sete bl
setne r11b
test rax, rax
setne r10b
sete cl
xor cl, r11b
jne 0x4d6aeb
or bl, r10b
xor bl, 1
jne 0x4d6aeb
xor ebx, ebx
jmp 0x4d6b54
lea rbp, [0x005fade0]
movzx ecx, byte [rdi + rbp]
cmp cl, byte [rsi + rbp]
jne 0x4d6aeb
add rbx, 1
movzx edi, byte [rax + rbx]
movzx esi, byte [r13 + rbx]
cmp dil, sil
jne 0x4d6b40
test dil, dil
jne 0x4d6b50
jmp 0x4d72e7
lea rax, [rdx + 0x10]
xor r8d, r8d
jmp 0x4d6b91
add r8, 1
add rax, 0x20
cmp r12, r8
je 0x4d5b30
mov ebx, dword [rax + 0xc]
mov ecx, ebx
xor ecx, 0xfffffffc
test ecx, ebx
jne 0x4d6b80
cmp qword [rax], 0
jne 0x4d6b80
jmp 0x4d72e2
xor r9d, r9d
mov rbx, qword [rsp + 0x50]
mov rbp, r10
test r14, r14
jne 0x4d6758
jmp 0x4d6711
mov ecx, r8d
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x50]
mov r11, r12
jmp 0x4d68bd
je 0x4d6e6a
cmp al, 0x34
jae 0x4d6ded
cmp qword [rsp + 0x40], 0
je 0x4d6c84
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + 0x20]
mov dword [rsp + 0xb0], eax
mov rax, qword [rcx + 0x18]
test rax, rax
je 0x4d6c84
mov ecx, dword [rax + 0x20]
mov dword [rsp + 0xb4], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6c84
mov ecx, dword [rax + 0x20]
mov dword [rsp + 0xb8], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6c84
mov ecx, dword [rax + 0x20]
mov dword [rsp + 0xbc], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6c84
mov ecx, dword [rax + 0x20]
mov dword [rsp + 0xc0], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6c84
mov ecx, dword [rax + 0x20]
mov dword [rsp + 0xc4], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6c84
mov ecx, dword [rax + 0x20]
mov dword [rsp + 0xc8], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6c84
mov eax, dword [rax + 0x20]
mov dword [rsp + 0xcc], eax
mov rdx, qword [rsi + 0x10]
mov rcx, r12
call fcn.004cea30
mov rdx, qword [rsi + 0x10]
mov cl, byte [rdx]
lea ebp, [rcx + 0x53]
mov rax, rdx
cmp bpl, 1
ja 0x4d6cc0
mov rax, rdx
nop dword [rax]
mov rax, qword [rax + 0x10]
movzx ecx, byte [rax]
lea ebp, [rcx + 0x53]
cmp bpl, 2
jb 0x4d6cb0
cmp cl, 0xb0
jne 0x4d6cc8
mov cl, byte [rax + 2]
cmp cl, 0x99
jae 0x4d6ed3
cmp cl, 0x75
je 0x4d6ee5
jmp 0x4d7103
cmp al, 0xab
jae 0x4d6d77
cmp al, 0x9c
jae 0x4d6e2d
cmp al, 0x8d
jne 0x4d895c
mov rdi, qword [rsi + 0x10]
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x28]
not eax
mov ecx, eax
or ecx, 0xffffffd7
cmp ecx, 0xffffffff
je 0x4d76ef
mov ecx, eax
or ecx, 0xffffffdf
cmp ecx, 0xffffffff
je 0x4d74f7
lea r9, [0x006033f2]
jmp 0x4d76a6
cmp al, 0x2f
ja 0x4d6df5
cmp al, 0x2d
jne 0x4d895c
jmp 0x4d6d97
cmp al, 0x8a
jae 0x4d6e64
cmp al, 0x4b
jne 0x4d895c
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 8]
mov byte [rsi], 0xa7
mov rcx, qword [rax + 0x28]
mov qword [rsi + 0x40], rcx
mov eax, dword [rax + 0x4c]
mov dword [rsi + 0x2c], eax
add word [rsi + 0x30], 0xffff
mov byte [rsi + 1], 0x44
jmp 0x4d895c
je 0x4d6d97
cmp al, 0xac
jne 0x4d895c
mov rbp, qword [rsi + 0x20]
test rbp, rbp
je 0x4d70b6
mov r15d, dword [rbp]
jmp 0x4d70b9
mov rdi, qword [rsi + 0x18]
test rdi, rdi
jne 0x4d6dbc
jmp 0x4d6df5
add rdi, 0x10
mov rdi, qword [rdi]
test rdi, rdi
je 0x4d6df5
mov eax, dword [rdi + 4]
mov ecx, eax
xor ecx, 0xfff7dfff
test ecx, eax
je 0x4d700c
not eax
or eax, 0xfff7ffff
cmp eax, 0xffffffff
je 0x4d6db0
mov rdi, qword [rdi + 0x20]
add rdi, 8
mov rdi, qword [rdi]
test rdi, rdi
jne 0x4d6dbc
jmp 0x4d6df5
cmp al, 0x3a
jae 0x4d895c
mov rax, qword [r13]
cmp byte [rax + 0x67], 0
jne 0x4d895c
mov rcx, qword [rsi + 0x10]
mov dl, byte [rcx]
cmp dl, 0xb0
jne 0x4d6e11
mov dl, byte [rcx + 2]
cmp dl, 0x8a
je 0x4d704b
mov eax, 1
cmp dl, 0xb1
je 0x4d704f
jmp 0x4d7058
jne 0x4d895c
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x28]
mov ecx, eax
xor ecx, 0xffffffd1
test ecx, eax
je 0x4d895c
mov ecx, eax
not ecx
or ecx, 0xffffffdf
cmp ecx, 0xffffffff
je 0x4d7511
lea r9, [0x006033f2]
jmp 0x4d786d
jne 0x4d895c
mov eax, dword [rsi + 4]
not eax
or eax, 0xffffefff
cmp eax, 0xffffffff
je 0x4d895c
mov rax, qword [rsp + 0x40]
mov edi, dword [rax + 0x20]
mov eax, dword [rax + 0x28]
mov ecx, eax
xor ecx, 0xffffffd1
test ecx, eax
je 0x4d6ea6
mov ecx, eax
xor ecx, 0xffffffdf
test ecx, eax
je 0x4d6eb7
lea r9, [0x006033f2]
jmp 0x4d7232
mov rdx, qword [rsi + 0x20]
mov rcx, r12
call fcn.004cec80
jmp 0x4d7280
mov ecx, eax
not ecx
or ecx, 0xfffffffb
cmp ecx, 0xffffffff
je 0x4d7219
lea r9, [0x00603404]
jmp 0x4d7232
cmp cl, 0xa7
jae 0x4d70ed
cmp cl, 0x9c
jae 0x4d7103
cmp byte [r13 + 0x124], 1
ja 0x4d7103
xor eax, eax
cmp byte [rsi], 0x33
lea rbp, [0x00602982]
lea rcx, [0x00602987]
cmove rcx, rbp
setne al
shl eax, 0x1c
add eax, 0x10000000
mov ebx, dword [rsi + 4]
mov ebp, ebx
not ebp
mov edi, eax
not edi
mov esi, ebp
and esi, 0x1847f9c8
and ebx, 0xe7b80637
or ebx, esi
mov rsi, qword [rsp + 0x30]
or ebp, edi
and edi, 0x1847f9c8
and eax, 0x20000000
or eax, edi
xor eax, ebx
not ebp
or ebp, eax
mov qword [rsi + 8], rcx
mov dword [rsi + 4], ebp
mov byte [rsi], 0xaa
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x4d6ff1
mov eax, dword [rsp + 0xb0]
mov dword [rcx + 0x20], eax
mov rax, qword [rcx + 0x18]
test rax, rax
je 0x4d6ff1
mov ecx, dword [rsp + 0xb4]
mov dword [rax + 0x20], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6ff1
mov ecx, dword [rsp + 0xb8]
mov dword [rax + 0x20], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6ff1
mov ecx, dword [rsp + 0xbc]
mov dword [rax + 0x20], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6ff1
mov ecx, dword [rsp + 0xc0]
mov dword [rax + 0x20], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6ff1
mov ecx, dword [rsp + 0xc4]
mov dword [rax + 0x20], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6ff1
mov ecx, dword [rsp + 0xc8]
mov dword [rax + 0x20], ecx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x4d6ff1
mov ecx, dword [rsp + 0xcc]
mov dword [rax + 0x20], ecx
test rdx, rdx
je 0x4d6fff
mov rcx, qword [r13]
call fcn.00468370
mov qword [rsi + 0x10], 0
jmp 0x4d7103
mov al, byte [rdi]
cmp al, 0x3b
je 0x4d701a
cmp al, 0xaa
jne 0x4d6df5
mov rcx, r12
mov rdx, rdi
call fcn.004d5a10
mov ebp, 2
cmp eax, 2
je 0x4d8969
cmp byte [rdi], 0xaa
jne 0x4d6df5
mov al, byte [rsi]
mov byte [rsi + 2], al
mov byte [rsi], 0xaf
xor ebp, ebp
jmp 0x4d8969
mov rcx, qword [rcx + 0x20]
add rcx, 0x20
mov rax, qword [rcx]
mov eax, dword [rax]
cmp byte [rsi], 0x30
jne 0x4d708c
mov rcx, qword [rsi + 0x20]
mov rbp, qword [rcx + 8]
mov bl, byte [rbp]
cmp bl, 0xb0
jne 0x4d7070
mov bl, byte [rbp + 2]
cmp bl, 0x8a
je 0x4d741b
mov edx, 1
cmp bl, 0xb1
je 0x4d741f
jmp 0x4d7429
mov rcx, qword [rsi + 0x18]
mov bl, byte [rcx]
cmp bl, 0xb0
jne 0x4d709a
mov bl, byte [rcx + 2]
cmp bl, 0x8a
je 0x4d720a
mov edx, 1
cmp bl, 0xb1
je 0x4d720e
jmp 0x4d7441
xor r15d, r15d
mov rcx, qword [r13]
mov bl, byte [rcx + 0x64]
mov rax, qword [rsp + 0x40]
mov r14d, dword [rax + 0x28]
mov eax, dword [rsi + 4]
mov edx, eax
xor edx, 0xfeffffff
test edx, eax
je 0x4d710d
mov rax, qword [rsi + 0x40]
xor edx, edx
cmp byte [rax + 0x20], 0xa6
cmovne rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x4d7114
jne 0x4d7103
mov ecx, dword [rax + 4]
not ecx
or ecx, 0xffdfffff
cmp ecx, 0xffffffff
je 0x4d764c
mov ebp, 1
jmp 0x4d8969
xor eax, eax
mov qword [rsp + 0x38], rax
mov rdi, qword [rsi + 8]
mov byte [rsp + 0x20], 0
mov rdx, rdi
mov r8d, r15d
mov r9d, ebx
call fcn.00423170
test rax, rax
mov dword [rsp + 0x48], r14d
je 0x4d71d7
mov r9, rax
xor r10d, r10d
cmp qword [rax + 0x20], 0
setne sil
mov eax, dword [rax + 4]
not eax
or eax, 0xfffffbff
cmp eax, 0xffffffff
je 0x4d7a71
mov rbx, qword [rsp + 0x30]
mov eax, dword [rbx + 4]
mov ecx, eax
not ecx
and ecx, 0xccdd34ca
mov edx, eax
and edx, 0x3322cb35
or edx, ecx
xor edx, 0xccd534ca
and eax, 0x80000
or eax, edx
mov dword [rbx + 4], eax
cmp r15d, 2
jne 0x4d74ba
mov rax, qword [rbp + 0x28]
movabs rcx, 0xbff0000000000000
mov qword [rsp + 0xb0], rcx
cmp byte [rax], 0x99
jne 0x4d7a3f
mov rdi, r9
mov rbx, qword [rax + 8]
test rbx, rbx
je 0x4d7a09
mov rcx, rbx
call fcn.005f4bd8
mov r8, rax
and r8d, 0x3fffffff
jmp 0x4d7a0c
mov rcx, qword [r13]
mov byte [rsp + 0x20], 0
mov rdx, rdi
mov r8d, 0xfffffffe
mov r9d, ebx
call fcn.00423170
mov r9, rax
test rax, rax
sete r14b
setne dil
mov rsi, r13
xor r10d, r10d
jmp 0x4d8241
mov rcx, qword [rcx + 0x20]
mov rcx, qword [rcx + 0x20]
mov edx, dword [rcx]
jmp 0x4d7441
mov ecx, eax
xor ecx, 0xfffffff7
test ecx, eax
lea rax, [0x006033d6]
lea r9, [0x00603416]
cmove r9, rax
lea rdx, [0x00603428]
lea r8, [0x006033c0]
mov rcx, r13
call fcn.00419aa0
mov byte [rsi], 0x79
mov rax, qword [r13]
mov rcx, rsi
jmp 0x4d7269
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x4d7280
mov edx, dword [rcx + 4]
not edx
or edx, 0xfffffffc
cmp edx, 0xffffffff
jne 0x4d7260
mov edx, dword [rcx + 0x34]
test edx, edx
jle 0x4d7260
mov dword [rax + 0x54], edx
mov rax, qword [rsp + 0x40]
cmp edi, dword [rax + 0x20]
je 0x4d895c
mov eax, dword [rsi + 4]
mov ecx, eax
not ecx
and ecx, 0x56796197
mov edx, eax
and edx, 0xa9869e68
or edx, ecx
xor edx, 0x567961d7
and eax, 0x40
or eax, edx
mov dword [rsi + 4], eax
mov rbp, qword [rsp + 0x40]
mov eax, dword [rbp + 0x28]
mov ecx, eax
not ecx
and ecx, 0x1231540c
mov edx, eax
and edx, 0xedceabf3
or edx, ecx
xor edx, 0x1231544c
and eax, 0x40
or eax, edx
mov dword [rbp + 0x28], eax
jmp 0x4d895c
mov r15, r11
xor eax, eax
mov ecx, 0xffffffff
xor rcx, r8
not rcx
and rcx, r8
shl rcx, 5
mov rbp, qword [rdx + rcx + 8]
mov ecx, r9d
xor ecx, 0xfffffffe
test ecx, r9d
sete bl
setne r11b
mov esi, dword [rbp + 4]
mov edi, esi
xor edi, 0xffffffef
test edi, esi
setne r10b
sete cl
xor cl, r11b
mov r13, qword [rsp + 0x68]
jne 0x4d734d
or bl, r10b
xor bl, 1
jne 0x4d734d
lea rdx, [0x0060344f]
mov rcx, r13
mov r8, rax
call fcn.00419aa0
mov ebp, 2
jmp 0x4d8969
test si, si
jns 0x4d7386
mov ecx, r9d
xor ecx, 0xffffbfff
test ecx, r9d
sete cl
mov rbx, qword [rsp + 0x70]
cmp rbx, qword [rsp + 0x40]
sete bl
cmp bl, cl
je 0x4d752a
mov rcx, qword [rsp + 0x70]
cmp rcx, qword [rsp + 0x40]
jne 0x4d752a
mov al, byte [rbp]
cmp al, 0xb0
jne 0x4d7390
mov al, byte [rbp + 2]
cmp al, 0x8a
mov rsi, qword [rsp + 0x30]
je 0x4d739f
cmp al, 0xb1
je 0x4d73a3
jmp 0x4d73b0
mov rbp, qword [rbp + 0x20]
add rbp, 0x20
mov rax, qword [rbp]
cmp dword [rax], 1
jne 0x4d73fa
mov eax, dword [rsp + 0xa8]
mov dword [rsp + 0x20], eax
mov rcx, r13
mov r9, rsi
call fcn.004da3b0
cmp byte [r13 + 0x124], 2
jb 0x4d7413
mov rax, qword [r13 + 0x190]
test rax, rax
mov r11, r15
je 0x4d7f12
cmp qword [rax], rsi
je 0x4d7640
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x4d73e3
jmp 0x4d7f12
lea rdx, [0x00602e77]
mov rcx, r13
call fcn.00419aa0
mov ebp, 2
jmp 0x4d8969
mov r11, r15
jmp 0x4d7f12
mov rbp, qword [rbp + 0x20]
add rbp, 0x20
mov rdx, qword [rbp]
mov edx, dword [rdx]
cmp edx, eax
jne 0x4d7441
mov rcx, qword [rcx + 0x28]
mov bl, byte [rcx]
cmp bl, 0xb0
je 0x4d7097
jmp 0x4d709a
cmp eax, edx
je 0x4d895c
lea rdx, [0x00602e77]
mov rcx, r13
call fcn.00419aa0
mov rax, qword [r13]
jmp 0x4d746d
mov rsi, qword [rsi + 0x10]
test rsi, rsi
je 0x4d895c
mov ecx, dword [rsi + 4]
mov edx, ecx
xor edx, 0xfffffffc
test edx, ecx
jne 0x4d7460
mov ecx, dword [rsi + 0x34]
test ecx, ecx
jle 0x4d7460
jmp 0x4d78b1
lea r8, [0x006034bf]
test r14, r14
je 0x4d7575
xor eax, eax
mov qword [rsp + 0x70], rax
xor r12d, r12d
xor eax, eax
mov qword [rsp + 0xe8], rax
cmp qword [rsp + 0x58], 0
jne 0x4d75b7
jmp 0x4d7610
mov rax, qword [r9 + 0x38]
cmp byte [rax], 0x75
mov eax, 0x800000
mov ecx, 0x7800000
cmove ecx, eax
mov dword [rbx + 0x2c], ecx
jmp 0x4d7a71
cmp eax, 1
je 0x4d7960
lea r8, [0x006034ce]
cmp qword [rsp + 0x58], 0
jne 0x4d75b7
jmp 0x4d7610
mov ecx, eax
or ecx, 0xfffffffb
cmp ecx, 0xffffffff
je 0x4d768e
lea r9, [0x00603404]
jmp 0x4d76a6
mov ecx, eax
xor ecx, 0xfffffffb
test ecx, eax
je 0x4d7854
lea r9, [0x00603404]
jmp 0x4d786d
lea rdx, [0x0060346e]
jmp 0x4d7338
mov rax, qword [rsp + 0xa0]
mov r14d, dword [rax]
cmp r14d, 2
jne 0x4d7972
mov r13, qword [rsp + 0x68]
cmp byte [r13 + 0x124], 2
jb 0x4d7fe4
mov word [rsi + 0x30], cx
mov qword [rsi + 0x40], r9
mov r12d, 1
mov bl, 0xa7
xor ebp, ebp
jmp 0x4d7c2d
mov eax, dword [rsi + 4]
test al, al
js 0x4d7e31
mov ecx, eax
not ecx
or ecx, 0xfbfff7ff
mov dl, 1
mov qword [rsp + 0xe8], rdx
cmp ecx, 0xffffffff
je 0x4d80f2
xor eax, eax
mov qword [rsp + 0x70], rax
xor r12d, r12d
mov rbp, qword [rsp + 0x88]
cmp qword [rsp + 0x58], 0
je 0x4d7610
lea eax, [r12 - 1]
mov rcx, qword [rsp + 0x58]
cmp dword [rcx], eax
mov rdx, qword [rsp + 0x58]
jne 0x4d75f7
mov rdi, r11
mov eax, dword [rsi + 4]
mov ecx, eax
xor ecx, 0xff7fffff
test ecx, eax
je 0x4d7d53
mov ecx, eax
xor ecx, 0x800000
and ecx, eax
mov dword [rsi + 4], ecx
mov r13, qword [rsp + 0x68]
jmp 0x4d7d94
mov rcx, qword [rsp + 0x80]
mov r15, r11
mov rdi, r8
call fcn.0047fbe0
mov r8, rdi
mov r11, r15
mov rdi, r11
test rbx, rbx
je 0x4d7916
mov r15, rbp
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
lea rdx, [0x006034e4]
mov r13, qword [rsp + 0x68]
mov rcx, r13
mov r9, rbx
jmp 0x4d7be5
mov qword [rax], 0
jmp 0x4d7f12
mov rcx, qword [rax + 0x40]
test rcx, rcx
je 0x4d7103
movzx eax, word [rax + 0x30]
test ax, ax
js 0x4d6ee5
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x4d6ee5
lea rax, [rax + rax*2]
mov eax, dword [rcx + rax*8 + 8]
not eax
or eax, 0xfffffff0
cmp eax, 0xffffffff
jne 0x4d6ee5
jmp 0x4d7103
or eax, 0xfffffff7
cmp eax, 0xffffffff
lea rax, [0x006033d6]
lea r9, [0x00603416]
cmove r9, rax
lea rdx, [0x00603428]
lea r8, [0x00603265]
mov rcx, r13
call fcn.00419aa0
mov rax, qword [r13]
mov rcx, rsi
jmp 0x4d76d9
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x4d76ef
mov ebp, dword [rcx + 4]
mov edx, ebp
xor edx, 0xfffffffc
test edx, ebp
jne 0x4d76d0
mov edx, dword [rcx + 0x34]
test edx, edx
jle 0x4d76d0
mov dword [rax + 0x54], edx
mov rax, qword [rsi + 0x18]
cmp byte [rax], 0x3b
jne 0x4d76ff
mov r11, r13
xor ebx, ebx
jmp 0x4d770e
mov r11, r13
mov rbx, qword [rdi + 8]
mov rdi, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
mov r14, qword [rdi + 8]
mov r13, qword [rax + 8]
cmp byte [r11 + 0x124], 2
jb 0x4d7765
mov rcx, qword [r11 + 0x190]
test rcx, rcx
je 0x4d7765
mov rdx, rcx
cmp qword [rdx], rax
je 0x4d773f
mov rdx, qword [rdx + 0x18]
test rdx, rdx
jne 0x4d772f
jmp 0x4d7749
mov qword [rdx], rsi
mov rcx, qword [r11 + 0x190]
test rcx, rcx
je 0x4d7765
lea rax, [rsi + 0x40]
cmp qword [rcx], rdi
je 0x4d7762
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x4d7752
jmp 0x4d7765
mov qword [rcx], rax
mov r15, qword [r11]
lea rax, [rsi + 0x2c]
mov qword [rsp + 0xa0], rax
mov dword [rsi + 0x2c], 0xffffffff
test rbx, rbx
mov qword [rsp + 0x80], r15
je 0x4d5aa5
mov r12, r14
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x28]
mov ecx, eax
xor ecx, 0xfffffff9
xor r14d, r14d
test ecx, eax
je 0x4d77b7
xor eax, eax
mov qword [rsp + 0x98], rax
xor ebx, ebx
mov r14, r12
jmp 0x4d5ab1
mov ecx, dword [r15 + 0x28]
test ecx, ecx
jle 0x4d78b9
mov r8, rbx
mov r10, qword [r15 + 0x20]
xor r9d, r9d
lea rbp, [0x005fade0]
xor r14d, r14d
mov rax, r14
shl rax, 5
mov rdi, qword [r10 + rax]
xor ebx, ebx
jmp 0x4d77f3
movzx edx, byte [rsi + rbp]
cmp dl, byte [rax + rbp]
jne 0x4d7808
add rbx, 1
movzx esi, byte [rdi + rbx]
movzx eax, byte [r8 + rbx]
cmp sil, al
jne 0x4d77e6
test sil, sil
jne 0x4d77ef
jmp 0x4d782e
movabs rax, 0x591f49eb274ff706
sub r14, rax
add r14, rax
add r14, 1
cmp r14, rcx
jne 0x4d77d7
mov rsi, qword [rsp + 0x30]
mov rbx, r8
jmp 0x4d78c1
mov eax, r14d
not eax
mov edx, 0xffffffff
not rdx
or rdx, rax
not rdx
shl rdx, 5
mov r9, qword [r10 + rdx + 0x18]
mov rsi, qword [rsp + 0x30]
mov rbx, r8
jmp 0x4d78bc
mov ecx, eax
xor ecx, 0xfffffff7
test ecx, eax
lea rax, [0x006033d6]
lea r9, [0x00603416]
cmove r9, rax
lea rdx, [0x00603428]
lea r8, [0x006033cb]
mov rcx, r13
call fcn.00419aa0
mov byte [rsi], 0x79
mov rax, qword [r13]
jmp 0x4d789d
mov rsi, qword [rsi + 0x10]
test rsi, rsi
je 0x4d895c
mov ecx, dword [rsi + 4]
not ecx
or ecx, 0xfffffffc
cmp ecx, 0xffffffff
jne 0x4d7890
mov ecx, dword [rsi + 0x34]
test ecx, ecx
jle 0x4d7890
mov dword [rax + 0x54], ecx
jmp 0x4d895c
xor r9d, r9d
cmp r14d, ecx
jne 0x4d7906
mov rdi, rbx
xor ecx, ecx
lea rdx, [0x005fd6fa]
lea rbp, [0x005fade0]
mov r14, r12
jmp 0x4d78e1
test bl, bl
je 0x4d793e
add rcx, 1
movzx ebx, byte [rcx + rdx]
movzx eax, byte [rdi + rcx]
cmp bl, al
je 0x4d78d9
movzx ebx, byte [rbx + rbp]
cmp bl, byte [rax + rbp]
je 0x4d78dd
mov qword [rsp + 0x98], r9
mov rbx, rdi
jmp 0x4d5ab1
mov qword [rsp + 0x98], r9
mov r14, r12
jmp 0x4d5ab1
cmp byte [rsp + 0xe8], 0
je 0x4d7bcb
mov r15, rbp
lea rdx, [0x005fe2dc]
mov rcx, qword [rsp + 0x68]
mov r9, r13
mov r13, rcx
jmp 0x4d7be5
mov rax, qword [r15 + 0x20]
mov rbx, qword [rax]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x98], rax
jmp 0x4d5ab1
mov word [rsi + 0x30], 0xffff
mov byte [rsi + 1], 0x44
mov r12d, 1
mov bl, 0xa7
mov r13, qword [rsp + 0x68]
jmp 0x4d7c2d
mov rax, qword [rsp + 0xf8]
mov qword [rax], r9
mov r13, qword [rsp + 0x68]
cmp byte [r13 + 0xd5], 0
je 0x4d87fb
mov r8, r11
mov byte [rsi + 2], 0xa7
mov rax, qword [rsp + 0x70]
mov r10d, dword [rax + 0x10]
movsx r11d, word [r9 + 0x36]
mov eax, dword [r9 + 0x30]
mov edx, eax
xor edx, 0xffffffdf
test edx, eax
je 0x4d8c88
test cx, cx
js 0x4d8c88
mov r15, qword [r9 + 8]
movzx eax, word [r15 + 0x12]
mov edi, eax
xor edi, 0xffffffdf
and edi, eax
test cx, cx
je 0x4d8ba3
mov edx, ecx
shl edx, 0x10
movsx eax, cx
test eax, eax
mov esi, 1
cmovg esi, eax
mov r12, rsi
xor r12, 0xfffffffffffffffe
cmp edx, 0x20000
jge 0x4d8bd5
mov r8, rsi
xor edx, edx
xor ecx, ecx
jmp 0x4d8c45
xor r8d, r8d
lea rdx, [rsp + 0xb0]
mov rcx, rbx
mov r9b, 1
call fcn.0044aa80
movsd xmm0, qword [rsp + 0xb0]
ucomisd xmm0, qword [0x005fa760]
mov r9, rdi
mov r10d, 0
jbe 0x4d7baa
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x2c], 0xffffffff
lea rdx, [0x00603276]
mov rcx, r13
mov r8, qword [rsp + 0x30]
mov rdi, r9
call fcn.00419aa0
xor r10d, r10d
mov r9, rdi
mov rax, qword [rsp + 0x40]
add dword [rax + 0x24], 1
mov rcx, qword [r13]
mov rax, qword [rcx + 0x1f8]
test rax, rax
je 0x4d7a98
cmp byte [rcx + 0xc5], 0
jne 0x4d7a98
cmp byte [r13 + 0x124], 0
je 0x4d7b4a
mov ecx, dword [r9 + 4]
mov eax, ecx
xor eax, 0xffffd7ff
test eax, ecx
je 0x4d7ad2
mov rdi, qword [rsp + 0x30]
mov edx, dword [rdi + 4]
mov ebx, edx
not ebx
and ebx, 0x25f4ca44
mov eax, edx
and eax, 0xda0b35bb
or eax, ebx
xor eax, 0x25e4ca44
and edx, 0x100000
or edx, eax
mov dword [rdi + 4], edx
not ecx
or ecx, 0xfffff7ff
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x28]
cmp ecx, 0xffffffff
je 0x4d7b25
mov ecx, eax
xor cl, 0xd1
and cl, al
mov rdx, qword [rsp + 0x30]
mov byte [rdx + 2], cl
not eax
or eax, 0xfffbffff
cmp eax, 0xffffffff
je 0x4d8192
mov rdx, qword [rsp + 0x30]
mov eax, dword [rdx + 4]
mov ecx, eax
and ecx, 0x40000000
xor eax, 0x40000000
or eax, ecx
mov dword [rdx + 4], eax
jmp 0x4d8192
mov ecx, eax
xor ecx, 0xffffffd5
test ecx, eax
je 0x4d8192
mov ecx, eax
xor ecx, 0xffffffdf
mov rbx, r9
test ecx, eax
je 0x4d7b91
lea r9, [0x006033f2]
jmp 0x4d8149
mov rdi, r9
mov r9, qword [r9 + 0x38]
mov rcx, qword [rcx + 0x200]
mov rdx, qword [r13 + 0x168]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], 0
mov edx, 0x1f
xor r8d, r8d
call rax
cmp eax, 1
jne 0x4d7e8f
mov esi, 0x17
lea rdx, [0x005ff140]
jmp 0x4d7eab
mov ecx, eax
xor ecx, 0xfffffffb
test ecx, eax
je 0x4d812f
lea r9, [0x00603404]
jmp 0x4d8149
mulsd xmm0, qword [0x005fa768]
cvttsd2si eax, xmm0
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x2c], eax
test eax, eax
jns 0x4d7a71
jmp 0x4d7a4b
mov r15, rbp
mov qword [rsp + 0x20], r13
lea rdx, [0x005fe2d2]
mov r13, qword [rsp + 0x68]
mov rcx, r13
mov r9, r14
call fcn.00419aa0
test rsi, rsi
mov r11, rdi
je 0x4d7c1a
mov rax, qword [r13]
mov rcx, rsi
jmp 0x4d7c04
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x4d7c1a
mov ebp, dword [rcx + 4]
mov edx, ebp
xor edx, 0xfffffffc
test edx, ebp
jne 0x4d7bfb
mov edx, dword [rcx + 0x34]
test edx, edx
jle 0x4d7bfb
mov dword [rax + 0x54], edx
mov byte [r13 + 0x1d], 1
mov rax, qword [rsp + 0x40]
add dword [rax + 0x24], 1
mov bl, 0xa7
mov rbp, r15
mov eax, dword [rsi + 4]
mov ecx, eax
xor ecx, 0xff7effff
test ecx, eax
jne 0x4d7c99
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x4d7c58
mov rcx, qword [rsp + 0x80]
mov rdi, r11
call fcn.00468370
mov r11, rdi
mov qword [rsi + 0x10], 0
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x4d7c7c
mov rcx, qword [rsp + 0x80]
mov rdi, r11
call fcn.00468370
mov r11, rdi
mov qword [rsi + 0x18], 0
mov eax, dword [rsi + 4]
mov ecx, eax
and ecx, 0x800000
xor eax, 0x800000
or eax, ecx
mov dword [rsi + 4], eax
test rbp, rbp
setne cl
movzx eax, word [rsi + 0x30]
test ax, ax
sets dl
cmp cl, dl
je 0x4d7d3d
test rbp, rbp
je 0x4d7d3d
mov rcx, qword [rsp + 0xf8]
mov rcx, qword [rcx]
mov edx, dword [rcx + 0x30]
not edx
or edx, 0xffffff9f
cmp edx, 0xffffffff
je 0x4d7d15
mov rdx, qword [rcx + 8]
mov rdi, rbp
lea rbp, [rax + rax*2]
movzx edx, word [rdx + rbp*8 + 0x12]
mov rbp, rdi
not edx
or edx, 0xff9f
cmp dx, 0xffff
je 0x4d7d15
movzx ecx, word [rcx + 0x36]
mov rdx, 0xffffffffffffffff
mov rax, 0xffffffffffffffff
shl rax, cl
cmp cx, 0x3f
not rax
cmovg rax, rdx
jmp 0x4d7d29
cmp ax, 0x3f
mov ecx, 0x3f
cmovl ecx, eax
mov eax, 1
shl rax, cl
mov rcx, qword [rbp + 0x50]
mov rdx, rcx
and rdx, rax
xor rcx, rax
or rcx, rdx
mov qword [rbp + 0x50], rcx
mov byte [rsi], bl
mov ebp, 2
cmp r12d, 1
je 0x4d7f12
jmp 0x4d8969
mov rdx, qword [rsi + 0x10]
test rdx, rdx
mov r13, qword [rsp + 0x68]
je 0x4d7d6e
mov rcx, qword [rsp + 0x80]
call fcn.00468370
mov qword [rsi + 0x10], 0
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x4d7d8c
mov rcx, qword [rsp + 0x80]
call fcn.00468370
mov qword [rsi + 0x18], 0
movzx esi, word [rsi + 0x30]
mov rcx, qword [r13]
mov edx, 0x48
call fcn.00429840
test rax, rax
je 0x4d7e22
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 0x40], 0
mov byte [rax], 0xa7
mov word [rax + 0x32], 0xffff
mov dword [rax + 0x28], 1
mov ecx, dword [rbp + 0x44]
mov dword [rax + 0x2c], ecx
mov word [rax + 0x30], si
mov rcx, qword [rbp + 0x20]
mov qword [rax + 0x40], rcx
mov dword [rax + 4], 0x200000
mov rbp, qword [rsp + 0x58]
movsxd rcx, dword [rbp]
cmp dword [rbp + 4], ecx
jle 0x4d7ee6
lea edx, [rcx + 1]
mov dword [rbp], edx
shl rcx, 5
movups xmmword [rbp + rcx + 0x10], xmm0
mov qword [rbp + rcx + 0x20], 0
mov qword [rbp + rcx + 8], rax
jmp 0x4d7ef8
mov rsi, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x58]
jmp 0x4d7efd
mov rcx, qword [rsp + 0x80]
cmp byte [rcx + 0xc5], 0
jne 0x4d8b7a
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0x28]
not ecx
or ecx, 0xfffeffff
mov rdx, qword [rsp + 0x80]
mov rbp, qword [rdx + 0x30]
cmp ecx, 0xffffffff
je 0x4d8b5b
mov rdx, rbp
xor rdx, 0xffffffffaffffffe
and rdx, rbp
mov ecx, 0x1d
cmp rdx, 0x40000001
jne 0x4d8b60
jmp 0x4d8b7a
mov ecx, eax
not ecx
or ecx, 2
cmp ecx, 0xffffffff
je 0x4d8868
mov esi, 1
lea rdx, [0x00602fdd]
mov rcx, r13
call fcn.00419aa0
mov dword [r13 + 0x18], esi
lea rdx, [0x006032b6]
mov rcx, r13
mov r8, qword [rsp + 0x30]
call fcn.00419aa0
mov rax, qword [rsp + 0x40]
add dword [rax + 0x24], 1
mov rax, qword [rsp + 0x30]
mov byte [rax], 0x79
mov ebp, 1
jmp 0x4d8969
mov rcx, qword [r13]
mov rdx, rbp
mov r8, rax
call fcn.0050ce50
mov rbp, rax
mov rsi, qword [rsp + 0x30]
mov r11, rdi
mov byte [rsi], 0xac
lea rax, [0x006034b6]
mov qword [rsi + 8], rax
mov qword [rsi + 0x20], rbp
mov rdx, qword [r13]
cmp qword [rdx + 0x1f8], 0
je 0x4d80ba
mov cl, byte [rsi]
cmp cl, 0x4d
je 0x4d7f34
cmp cl, 0xa7
jne 0x4d80ba
cmp qword [rsp + 0x98], 0
je 0x4d80ba
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 8]
mov rdx, qword [rdx + 0x20]
add rdx, 0x18
mov r9d, 0xffffffff
xor ebp, ebp
mov rdi, qword [rsp + 0x98]
nop word cs:[rax + rax]
nop
add rbp, 1
add r9d, 1
lea rbx, [rdx + 0x20]
cmp qword [rdx], rdi
mov rdx, rbx
jne 0x4d7f70
test r9d, r9d
js 0x4d80ba
cmp cl, 0x4d
je 0x4d8073
mov ecx, dword [rax]
test ecx, ecx
jle 0x4d80ba
mov rdx, qword [rsp + 0xa0]
mov ebp, dword [rdx]
neg rcx
lea rbx, [rax + 0x4c]
mov edx, 1
xor edi, edi
cmp ebp, dword [rbx]
je 0x4d8050
add rdi, 1
lea rsi, [rcx + rdx]
add rsi, 1
add rdx, 1
add rbx, 0x68
cmp rsi, 1
mov rsi, qword [rsp + 0x30]
jne 0x4d7fb8
jmp 0x4d80ba
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x10]
mov r10d, dword [rax + 0x48]
mov eax, dword [r9 + 0x30]
mov edx, eax
xor edx, 0xffffffdf
test edx, eax
je 0x4d8da5
test cx, cx
js 0x4d8da5
movzx eax, word [r15 + 0x12]
mov esi, eax
xor esi, 0xffffffdf
and esi, eax
test cx, cx
je 0x4d8cb8
mov edx, ecx
shl edx, 0x10
movsx ecx, cx
test ecx, ecx
mov r12d, 1
cmovg r12d, ecx
mov r8d, r12d
and r8d, 1
cmp edx, 0x20000
jge 0x4d8cc2
xor eax, eax
xor ecx, ecx
jmp 0x4d8d58
neg edx
mov ecx, 0xffffffff
not rcx
or rcx, rdx
not rcx
imul rcx, rcx, 0x68
add rax, rcx
add rax, 0x28
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0xf0]
mov rax, qword [rax]
test rax, rax
je 0x4d80ba
movzx ecx, word [rsi + 0x30]
test cx, cx
jns 0x4d8095
movzx ecx, word [rax + 0x34]
test cx, cx
js 0x4d80a4
lea rcx, [rcx + rcx*2]
shl rcx, 3
add rcx, qword [rax + 8]
mov r11, qword [rcx]
mov rdx, qword [rax]
mov rcx, r13
mov r8, r11
call fcn.004da600
cmp eax, 2
jne 0x4d80ba
mov byte [rsi], 0x79
mov rax, qword [rsp + 0x40]
add dword [rax + 0x20], 1
mov ebp, 1
mov rcx, qword [rsp + 0x70]
cmp rcx, rax
je 0x4d8969
nop word cs:[rax + rax]
mov rax, qword [rax + 0x18]
add dword [rax + 0x20], 1
cmp rax, rcx
jne 0x4d80e0
jmp 0x4d8969
mov rcx, qword [rsi + 8]
xor edx, edx
lea rbp, [0x00602982]
jmp 0x4d8114
movzx ebx, byte [rbx + r10]
cmp bl, byte [rdi + r10]
jne 0x4d887e
add rdx, 1
movzx ebx, byte [rcx + rdx]
movzx edi, byte [rdx + rbp]
cmp bl, dil
jne 0x4d8101
test bl, bl
jne 0x4d8110
mov ecx, 0x10000000
jmp 0x4d88b2
not eax
or eax, 0xfffffff7
cmp eax, 0xffffffff
lea rax, [0x006033d6]
lea r9, [0x00603416]
cmove r9, rax
lea rdx, [0x00603428]
lea r8, [0x006032da]
mov rdi, r13
mov rcx, r13
call fcn.00419aa0
mov rax, qword [r13]
mov rcx, qword [rsp + 0x30]
mov r9, rbx
xor r10d, r10d
jmp 0x4d817c
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x4d8192
mov ebx, dword [rcx + 4]
mov edx, ebx
xor edx, 0xfffffffc
test edx, ebx
jne 0x4d8173
mov edx, dword [rcx + 0x34]
test edx, edx
jle 0x4d8173
mov dword [rax + 0x54], edx
mov r10b, sil
mov ecx, dword [r9 + 4]
mov eax, ecx
not eax
mov edx, eax
or edx, 0xfffbffff
cmp edx, 0xffffffff
je 0x4d81c5
cmp byte [r13 + 0x1e], 0
jne 0x4d81c5
mov rdx, qword [r13]
mov ebx, dword [rdx + 0x2c]
mov edx, ebx
xor edx, 0xffffffdf
test edx, ebx
je 0x4d8387
mov edx, ecx
xor edx, 0xffd7ffff
mov r14b, 1
test edx, ecx
mov rcx, qword [rsp + 0x30]
je 0x4d823b
cmp byte [r13 + 0x124], 1
mov rbx, qword [rsp + 0x38]
ja 0x4d8233
mov ecx, dword [rcx + 4]
mov edx, ecx
xor edx, 0xbfffffff
test edx, ecx
je 0x4d8233
or eax, 0xfff7ffff
cmp eax, 0xffffffff
jne 0x4d820b
mov rax, qword [r13]
cmp byte [rax + 0x30], 0
js 0x4d8233
lea rdx, [0x00602ef0]
mov rsi, r13
mov rcx, r13
mov r8, qword [rsp + 0x30]
mov r15, r9
mov edi, r10d
call fcn.00419aa0
mov r10d, edi
mov r9, r15
mov dil, 1
jmp 0x4d8246
mov dil, 1
mov rsi, r13
jmp 0x4d8246
mov dil, 1
mov rsi, r13
mov rbx, qword [rsp + 0x38]
lea r15, [rsi + 0x124]
mov r13, rsi
cmp byte [rsi + 0x124], 2
jae 0x4d828e
test r9, r9
mov rsi, qword [rsp + 0x30]
je 0x4d82b4
test rbx, rbx
setne cl
cmp qword [r9 + 0x28], 0
setne dl
cmp cl, dl
je 0x4d82b7
test rbx, rbx
je 0x4d82b7
mov edi, r10d
mov qword [rsp + 0x60], r9
lea rdx, [0x006032f6]
jmp 0x4d8425
mov qword [rsp + 0x60], r9
mov rsi, qword [rsp + 0x30]
mov eax, dword [rsi + 4]
mov ecx, eax
xor ecx, 0xfeffffff
test ecx, eax
mov r14d, 1
cmove r14d, r10d
jmp 0x4d8468
xor r9d, r9d
test r10d, r10d
mov qword [rsp + 0x60], r9
je 0x4d83ba
mov rax, qword [rsp + 0x40]
mov esi, dword [rax + 0x28]
mov edx, esi
not edx
or edx, 0xfffffffe
mov ecx, dword [r9 + 4]
cmp edx, 0xffffffff
je 0x4d8306
mov edx, ecx
xor edx, 0xfffeffff
test edx, ecx
setne r8b
sete dl
cmp qword [rsp + 0x38], 0
sete bl
setne al
xor al, dl
jne 0x4d8366
or bl, r8b
xor bl, 1
jne 0x4d8366
mov rbx, qword [rsp + 0x38]
test rbx, rbx
setne al
not ecx
or ecx, 0xfffeffff
cmp ecx, 0xffffffff
setne dl
xor dl, al
lea r8, [0x00603321]
lea rax, [0x00603328]
cmovne rax, r8
cmp ecx, 0xffffffff
cmove r8, rax
test rbx, rbx
cmove r8, rax
lea rdx, [0x00603332]
mov rcx, r13
mov rsi, qword [rsp + 0x30]
mov r9, rsi
call fcn.00419aa0
mov rax, qword [rsp + 0x40]
add dword [rax + 0x24], 1
jmp 0x4d8465
mov rbx, qword [rsp + 0x38]
test rbx, rbx
je 0x4d83ba
and esi, 0x4000
jne 0x4d83ba
mov al, 1
test al, al
je 0x4d83ba
lea r8, [0x00603321]
jmp 0x4d8341
mov rax, r13
lea r15, [r13 + 0x124]
xor r9d, r9d
cmp byte [r13 + 0x124], 2
jae 0x4d87ef
mov r14b, 1
xor edi, edi
mov rbx, qword [rsp + 0x38]
test r10d, r10d
mov qword [rsp + 0x60], r9
jne 0x4d82c5
test dil, dil
jne 0x4d83cc
mov rax, qword [r13]
cmp byte [rax + 0xc5], 0
je 0x4d8416
test r14b, r14b
mov rsi, qword [rsp + 0x30]
je 0x4d840a
test r10d, r10d
jne 0x4d843d
mov eax, dword [rsi + 4]
not eax
or eax, 0xfeffffff
xor r14d, r14d
cmp eax, 0xffffffff
je 0x4d8468
lea rdx, [0x00603390]
mov rcx, r13
mov r8, rsi
call fcn.00419aa0
mov rax, qword [rsp + 0x40]
add dword [rax + 0x24], 1
jmp 0x4d8468
mov edi, r10d
lea rdx, [0x00603364]
jmp 0x4d8425
mov edi, r10d
lea rdx, [0x0060334e]
mov rsi, qword [rsp + 0x30]
mov rcx, r13
mov r8, rsi
call fcn.00419aa0
mov rax, qword [rsp + 0x40]
add dword [rax + 0x24], 1
test edi, edi
je 0x4d8465
xor eax, eax
test rbx, rbx
sete al
not eax
and eax, 0xffffbfff
mov rdx, qword [rsp + 0x40]
mov ecx, dword [rdx + 0x28]
xor eax, ecx
not eax
and eax, ecx
mov dword [rdx + 0x28], eax
mov r14d, 1
jmp 0x4d8468
xor r14d, r14d
test rbp, rbp
je 0x4d84a4
mov edi, dword [rbp]
test edi, edi
jle 0x4d84a4
add rbp, 8
lea ebx, [rdi + 1]
jmp 0x4d848f
add edi, 0xffffffff
add rbp, 0x20
add ebx, 0xffffffff
cmp ebx, 1
jle 0x4d84a4
mov rdx, qword [rbp]
test rdx, rdx
je 0x4d8480
mov rcx, r12
call fcn.004cea30
test eax, eax
je 0x4d8480
mov ebp, 1
test r14d, r14d
je 0x4d8969
mov rbx, qword [rsp + 0x38]
test rbx, rbx
je 0x4d84e1
mov rax, qword [rsp + 0x40]
mov r14, qword [rax + 0x30]
cmp byte [r15], 1
ja 0x4d8987
test r14, r14
je 0x4d86d7
mov rdi, qword [r14 + 0x78]
jmp 0x4d86d9
mov byte [rsi], 0xa8
mov byte [rsi + 2], 0
mov eax, dword [rsi + 4]
not eax
or eax, 0xfeffffff
cmp eax, 0xffffffff
je 0x4d850c
mov rax, qword [rsi + 0x40]
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x4d850c
mov rcx, r12
call fcn.004cea30
cmp qword [rsp + 0x40], 0
je 0x4d8a3f
mov rdx, rsi
xorps xmm6, xmm6
lea r12, [rsp + 0x110]
lea rsi, [rsp + 0xb0]
mov rdi, qword [rsp + 0x40]
mov rax, qword [rdi + 8]
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
mov qword [rsp + 0xd0], 0
lea rcx, [rsp + 0x120]
movups xmmword [rcx], xmm6
lea rcx, [0x004da710]
mov qword [rsp + 0xb8], rcx
lea rcx, [0x004da7c0]
mov qword [rsp + 0xc0], rcx
lea rcx, [0x004da8c0]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd8], r12
mov r14, r13
mov rcx, qword [r13]
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rax
mov r13, qword [rdx + 0x20]
test r13, r13
je 0x4d85f6
mov ebx, dword [r13]
test ebx, ebx
jle 0x4d85f6
add r13, 8
lea r15d, [rbx + 1]
jmp 0x4d85e1
add ebx, 0xffffffff
add r13, 0x20
add r15d, 0xffffffff
cmp r15d, 1
jle 0x4d85f6
mov rdx, qword [r13]
test rdx, rdx
je 0x4d85d0
mov rcx, rsi
call fcn.004cea30
test eax, eax
je 0x4d85d0
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 4]
not eax
or eax, 0xfeffffff
cmp eax, 0xffffffff
je 0x4d8624
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x40]
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x4d8624
mov rcx, rsi
call fcn.004cea30
mov r13, r14
mov rcx, qword [r14]
mov rdx, qword [rsp + 0x128]
call fcn.00408130
mov eax, dword [rsp + 0xd4]
test ax, ax
je 0x4d8670
mov ecx, eax
xor ecx, 0xfffffffe
and ecx, eax
test cx, cx
jne 0x4d8670
mov al, 1
test al, al
je 0x4d8670
mov rdx, qword [rsp + 0x30]
add byte [rdx + 2], 1
mov rdi, qword [rdi + 0x18]
test rdi, rdi
jne 0x4d8533
jmp 0x4d8a3f
cmp qword [rsp + 0x60], 0
je 0x4d8a3f
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + 4]
mov ecx, eax
xor ecx, 0xf7ffefff
and ecx, eax
mov eax, ecx
not eax
and eax, 0x8000010
and ecx, 0xf7ffffef
or ecx, eax
mov eax, dword [rdi + 0x28]
mov edx, ecx
not edx
mov ebx, eax
not ebx
mov esi, edx
and esi, 0xfa08eb62
and ecx, 0x5f7149d
or ecx, esi
or edx, ebx
and ebx, 0xfa08eb62
and eax, 0x5f7149d
or eax, ebx
xor eax, ecx
not edx
or edx, eax
mov dword [rdi + 0x28], edx
jmp 0x4d8a3f
xor edi, edi
mov r8, qword [rbx]
test r8, r8
je 0x4d86e7
cmp byte [rbx + 0x20], 0
je 0x4d8735
mov rcx, r13
mov rdx, rbx
mov r8, rdi
call fcn.004c5e30
mov al, byte [rbx + 0x20]
mov rdx, qword [rsp + 0x60]
cmp al, 0x59
jne 0x4d8920
cmp qword [rbx + 0x28], 0
jne 0x4d8717
cmp qword [rbx + 0x30], 0
je 0x4d8920
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x4d8729
cmp dword [rax], 1
je 0x4d8920
lea rdx, [0x00603518]
jmp 0x4d8941
test rdi, rdi
je 0x4d8777
lea rax, [0x005fade0]
mov rcx, qword [rdi]
xor edx, edx
jmp 0x4d8755
movzx ebx, byte [rbx + rax]
cmp bl, byte [rsi + rax]
jne 0x4d8769
add rdx, 1
movzx ebx, byte [rcx + rdx]
movzx esi, byte [r8 + rdx]
cmp bl, sil
jne 0x4d8748
test bl, bl
jne 0x4d8751
jmp 0x4d878b
mov rdi, qword [rdi + 0x40]
test rdi, rdi
mov rbx, qword [rsp + 0x38]
jne 0x4d8741
lea rdx, [0x006036a0]
mov rcx, r13
call fcn.00419aa0
jmp 0x4d8952
test rdi, rdi
mov rbx, qword [rsp + 0x38]
je 0x4d8952
mov rcx, qword [r13]
mov rdx, qword [rdi + 0x10]
mov rsi, rbx
mov rbx, r13
xor r13d, r13d
xor r8d, r8d
call fcn.004d2fa0
mov qword [rsi + 0x10], rax
mov rcx, qword [rbx]
mov rdx, qword [rdi + 0x18]
xor r8d, r8d
call fcn.004d2fa0
mov qword [rsi + 0x18], rax
mov rdx, qword [rdi + 0x28]
test rdx, rdx
je 0x4d88ca
mov rsi, rbx
mov rcx, qword [rbx]
xor r8d, r8d
xor r9d, r9d
call fcn.004d3ed0
mov r13, rax
jmp 0x4d88cd
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x4d8293
mov word [rsi + 0x30], cx
test ecx, ecx
js 0x4d8b24
mov r12d, 1
mov edx, 1
shl edx, cl
cmp ecx, 0x1f
mov eax, 0xffffffff
cmovle eax, edx
test r14d, r14d
je 0x4d8bb6
mov ecx, dword [r13 + 0xd0]
mov edx, ecx
not edx
mov ebp, eax
not ebp
mov ebx, edx
and ebx, 0xf1d13761
and ecx, 0xe2ec89e
or ecx, ebx
or edx, ebp
and ebp, 0xf1d13761
and eax, 0xe2ec89e
or eax, ebp
xor eax, ecx
not edx
or edx, eax
mov dword [r13 + 0xd0], edx
jmp 0x4d8bcc
test eax, eax
mov r9, rdi
mov r10d, 0
jne 0x4d7ed4
jmp 0x4d7a98
xor edx, edx
lea rbp, [0x00602987]
jmp 0x4d889c
movzx ebx, byte [rbx + r10]
cmp bl, byte [rdi + r10]
jne 0x4d8b33
add rdx, 1
movzx ebx, byte [rcx + rdx]
movzx edi, byte [rdx + rbp]
cmp bl, dil
jne 0x4d8889
test bl, bl
jne 0x4d8898
mov ecx, 0x20000000
mov byte [rsi], 0xaa
mov edx, ecx
and edx, eax
xor ecx, eax
or ecx, edx
mov dword [rsi + 4], ecx
mov ebp, 1
jmp 0x4d8969
mov rsi, rbx
mov rbx, qword [rsp + 0x38]
mov qword [rbx + 0x28], r13
mov rdx, qword [rdi + 0x30]
test rdx, rdx
je 0x4d88f2
mov r13, rsi
mov rcx, qword [rsi]
xor r8d, r8d
xor r9d, r9d
call fcn.004d3ed0
jmp 0x4d88f7
xor eax, eax
mov r13, rsi
mov rdx, qword [rsp + 0x60]
mov qword [rbx + 0x30], rax
mov al, byte [rdi + 0x21]
mov byte [rbx + 0x21], al
mov al, byte [rdi + 0x22]
mov byte [rbx + 0x22], al
mov al, byte [rdi + 0x20]
mov byte [rbx + 0x20], al
mov cl, byte [rdi + 0x24]
mov byte [rbx + 0x24], cl
cmp al, 0x59
je 0x4d8705
mov eax, dword [rdx + 4]
not eax
or eax, 0xfffeffff
cmp eax, 0xffffffff
je 0x4d894e
cmp qword [rbx + 0x48], 0
je 0x4d8a89
lea rdx, [0x0060355f]
mov rcx, r13
call fcn.00419aa0
mov rdx, qword [rsp + 0x60]
mov qword [rbx + 0x50], rdx
mov rax, qword [r13]
cmp byte [rax + 0x67], 0
je 0x4d8987
xor ebp, ebp
cmp dword [r13 + 0x30], 0
setne bpl
add ebp, ebp
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x130]
add rsp, 0x148
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdi, qword [rbx + 0x10]
test rdi, rdi
je 0x4d89c2
mov ebx, dword [rdi]
test ebx, ebx
jle 0x4d89c2
add rdi, 8
lea esi, [rbx + 1]
jmp 0x4d89ae
add ebx, 0xffffffff
add rdi, 0x20
add esi, 0xffffffff
cmp esi, 1
jle 0x4d89c2
mov rdx, qword [rdi]
test rdx, rdx
je 0x4d899f
mov rcx, r12
call fcn.004cea30
test eax, eax
je 0x4d899f
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x18]
test rdi, rdi
mov r15, qword [rsp + 0x40]
je 0x4d8a07
mov ebx, dword [rdi]
test ebx, ebx
jle 0x4d8a07
add rdi, 8
lea esi, [rbx + 1]
jmp 0x4d89f3
add ebx, 0xffffffff
add rdi, 0x20
add esi, 0xffffffff
cmp esi, 1
jle 0x4d8a07
mov rdx, qword [rdi]
test rdx, rdx
je 0x4d89e4
mov rcx, r12
call fcn.004cea30
test eax, eax
je 0x4d89e4
mov rsi, qword [rsp + 0x38]
mov rdx, qword [rsi + 0x48]
test rdx, rdx
je 0x4d8a1d
mov rcx, r12
call fcn.004cea30
mov rcx, r14
mov rdx, rsi
call fcn.004d3cf0
mov eax, dword [r15 + 0x28]
mov ecx, eax
and ecx, 0x8000
xor eax, 0x8000
or eax, ecx
mov dword [r15 + 0x28], eax
mov ecx, dword [rsp + 0x48]
mov eax, ecx
xor eax, 0xffffbffe
and eax, ecx
mov rsi, qword [rsp + 0x40]
mov ecx, dword [rsi + 0x28]
mov edx, ecx
not edx
mov ebx, eax
not ebx
mov edi, edx
and edi, 0x5684796a
and ecx, 0xa97b8695
or ecx, edi
or edx, ebx
and ebx, 0x5684796a
and eax, 0xa97b8695
or eax, ebx
xor eax, ecx
not edx
or edx, eax
mov dword [rsi + 0x28], edx
jmp 0x4d8969
mov r15, qword [r13]
mov rax, qword [rdx + 0x38]
lea rcx, [0x0060359e]
cmp rax, rcx
je 0x4d8b13
lea rcx, [0x006035a9]
cmp rax, rcx
je 0x4d8b1a
lea rcx, [0x006035b4]
cmp rax, rcx
je 0x4d8bac
lea rcx, [0x006035b9]
cmp rax, rcx
je 0x4d8dc5
lea rcx, [0x006035c6]
cmp rax, rcx
je 0x4d8dcc
lea rcx, [0x006035d0]
cmp rax, rcx
je 0x4d8dd3
lea rcx, [0x006035d6]
cmp rax, rcx
je 0x4d8dda
lea rcx, [0x006035db]
cmp rax, rcx
jne 0x4d894e
mov edi, 7
jmp 0x4d8ddf
xor edi, edi
jmp 0x4d8ddf
mov edi, 1
jmp 0x4d8ddf
mov byte [rsi + 1], 0x44
mov r12d, 1
jmp 0x4d8bcc
xor eax, eax
mov qword [rsp + 0x70], rax
xor r12d, r12d
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x88]
cmp qword [rsp + 0x58], 0
jne 0x4d75b7
jmp 0x4d7610
mov ecx, 0x1e
mov rdx, 0xfffffffffffffffe
rol rdx, cl
not rbp
or rdx, rbp
cmp rdx, 0xffffffffffffffff
je 0x4d7580
lea rdx, [0x00603493]
mov ecx, 0x1c
mov r8, r13
call fcn.00408970
mov byte [rsi], 0x75
mov qword [rsi + 0x40], 0
mov ebp, 1
jmp 0x4d8969
xor ebx, ebx
xor ecx, ecx
jmp 0x4d8c7a
mov edi, 2
jmp 0x4d8ddf
mov ecx, dword [r13 + 0xcc]
mov edx, ecx
and edx, eax
xor ecx, eax
or ecx, edx
mov dword [r13 + 0xcc], ecx
mov bl, 0x4d
xor ebp, ebp
jmp 0x4d7c2d
mov r8, rsi
and esi, 0x7ffffffe
lea rbp, [r15 + 0x42]
xor edx, edx
xor ecx, ecx
mov rbx, rsi
movzx edi, di
shr edi, 5
mov eax, edi
not eax
and eax, 0xffffcb55
and edi, 0x4aa
or edi, eax
xor edi, 0xffffcb54
add ecx, edi
mov eax, edx
and eax, 1
mov rdi, rdx
xor rdi, 1
or rdi, rax
lea rax, [rdi + rdi*2]
movzx eax, byte [r15 + rax*8 + 0x12]
and al, 0x20
cmp al, 1
adc cx, 0
add rdx, 2
movzx eax, word [rbp]
mov edi, eax
xor edi, 0xffffffdf
and edi, eax
add rbx, 0xfffffffffffffffe
add rbp, 0x30
cmp rsi, rdx
jne 0x4d8be9
mov rbx, r8
test r12d, ebx
je 0x4d8c6e
lea rax, [rdx + rdx*2]
movzx edx, di
movzx edi, word [r15 + rax*8 + 0x2a]
and edi, 0x20
shr edx, 5
mov eax, edx
not eax
and eax, 1
and edx, 0xfffffffe
or edx, eax
add ecx, edx
mov rsi, qword [rsp + 0x30]
lea r8, [0x006034f1]
test di, di
je 0x4d8c88
sub ebx, ecx
add bx, word [r9 + 0x38]
mov ecx, ebx
add r11d, 1
imul r11d, r14d
add r10d, r11d
movsx eax, cx
add eax, r10d
add eax, 1
mov rcx, qword [rsp + 0xa0]
mov dword [rcx], eax
mov r12d, 1
mov bl, 0xb0
xor ebp, ebp
mov r11, r8
jmp 0x4d7c2d
xor r12d, r12d
xor ecx, ecx
jmp 0x4d8d89
movabs r11, 0x78f5e458fbd58aee
mov ebp, r12d
and ebp, 0x7ffffffe
xor eax, eax
mov rbx, r11
not rbx
mov r14, r11
and r14, 0xfffffffffffffffe
xor ecx, ecx
movzx esi, si
shr esi, 5
mov edi, esi
not edi
and edi, 1
and esi, 0xfffffffe
or esi, edi
add ecx, esi
mov rsi, rax
not rsi
mov rdi, rsi
and rdi, r11
mov rdx, rax
and rdx, rbx
or rdx, rdi
mov edi, ebx
and edi, 1
or rdi, r14
xor rdi, rdx
not esi
mov edx, r11d
or edx, ebx
and edx, esi
and edx, 1
or rdx, rdi
lea rdx, [rdx + rdx*2]
movzx edx, byte [r15 + rdx*8 + 0x12]
and dl, 0x20
cmp dl, 1
adc cx, 0
add rax, 2
lea rdx, [rax + rax*2]
movzx edx, word [r15 + rdx*8 + 0x12]
mov esi, edx
xor esi, 0xffffffdf
and esi, edx
add rbp, 0xfffffffffffffffe
jne 0x4d8ce6
test r8, r8
je 0x4d8d89
lea rax, [rax + rax*2]
movzx edx, si
movzx esi, word [r15 + rax*8 + 0x2a]
and esi, 0x20
shr edx, 5
mov eax, edx
not eax
and eax, 0x2f25
and edx, 0xda
or edx, eax
xor edx, 0x2f24
add ecx, edx
test si, si
je 0x4d8d99
sub r12d, ecx
add r12w, word [r9 + 0x38]
mov ecx, r12d
mov rsi, qword [rsp + 0x30]
lea r11, [0x006034f1]
movsx eax, cx
add r10d, eax
mov rax, qword [rsp + 0xa0]
mov dword [rax], r10d
mov r12d, 1
mov bl, 0xb0
xor ebp, ebp
jmp 0x4d7c2d
mov edi, 3
jmp 0x4d8ddf
mov edi, 4
jmp 0x4d8ddf
mov edi, 5
jmp 0x4d8ddf
mov edi, 6
mov rdx, qword [rbx + 0x28]
test rdx, rdx
je 0x4d8df0
mov rcx, r15
call fcn.00468370
lea rsi, [rbx + 0x28]
mov rdx, qword [rbx + 0x30]
test rdx, rdx
je 0x4d8e05
mov rcx, r15
call fcn.00468370
lea rax, [rdi + rdi*2]
lea r8, [0x006035e0]
xorpd xmm0, xmm0
movupd xmmword [rsi], xmm0
mov dl, byte [r8 + rax*8 + 8]
mov cl, byte [r8 + rax*8 + 0xc]
mov rbx, qword [rsp + 0x38]
mov byte [rbx + 0x20], dl
mov byte [rbx + 0x21], cl
mov al, byte [r8 + rax*8 + 0x10]
mov byte [rbx + 0x22], al
mov byte [rbx + 0x24], 0
cmp cl, 0x56
mov rdx, qword [rsp + 0x60]
jne 0x4d894e
mov rdi, r13
mov dword [rsp + 0xb0], 0
lea rcx, [0x005fd562]
lea rdx, [rsp + 0xb0]
call fcn.0047a900
mov r13d, eax
xor eax, eax
test r13d, r13d
sete al
lea rdx, [rax + rax]
add rdx, 0x48
mov rcx, r15
call fcn.00429840
test rax, rax
je 0x4d8eed
xorpd xmm0, xmm0
movupd xmmword [rax], xmm0
movupd xmmword [rax + 0x30], xmm0
movupd xmmword [rax + 0x20], xmm0
movupd xmmword [rax + 0x10], xmm0
mov qword [rax + 0x40], 0
mov byte [rax], 0x9b
mov word [rax + 0x32], 0xffff
test r13d, r13d
je 0x4d8ed5
mov ecx, dword [rsp + 0xb0]
xor edx, edx
test ecx, ecx
sete dl
shl edx, 0x1c
add edx, 0x10800800
mov dword [rax + 4], edx
mov dword [rax + 8], ecx
jmp 0x4d8ee6
mov rcx, rax
add rcx, 0x48
mov qword [rax + 8], rcx
mov word [rax + 0x48], 0x31
mov dword [rax + 0x28], 1
mov qword [rsi], rax
mov r13, rdi
jmp 0x4d8949