Function at 0x484860
Capabilities:
Encode data using xor
Extract resource via kernel32 functions
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xd8
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x80], xmm7
movaps xmmword [rsp + 0x90], xmm8
movaps xmmword [rsp + 0xa0], xmm9
movaps xmmword [rsp + 0xb0], xmm10
movaps xmmword [rsp + 0xc0], xmm11
mov dword [rsp + 0x130], r8d
mov r13, rdx
test r8d, r8d
jle 0x452895
movq xmm6, qword [0x004a5380]
movq xmm7, qword [0x004a5390]
xor r15d, r15d
mov rsi, rcx
movapd xmm11, xmm6
movapd xmm10, xmm6
movapd xmm9, xmm7
movapd xmm8, xmm6
nop word [rax + rax]
mov qword [rsi], 0
movzx ebx, byte [r13]
lea r12, [r13 + 1]
lea eax, [rbx - 0x2e]
cmp al, 0x49
ja case.0x452834.1
lea rdx, [0x004a3b70]
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov rcx, r12
call sub.msvcrt.dll_strlen
lea r8, str.surrogatepass
mov rcx, r12
mov rdi, rax
mov rdx, rax
call qword [sym.imp.python39.dll_PyUnicode_DecodeUTF8]
lea r13, [r12 + rdi + 1]
mov qword [rsp + 0x50], rax
cmp bl, 0x61
je 0x4530e6
nop dword [rax]
mov qword [rsi], rax
add qword [rax], 2
add rsi, 8
add r15d, 1
cmp dword [rsp + 0x130], r15d
jne 0x452808
movaps xmm6, xmmword [rsp + 0x70]
mov rax, r13
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm8, xmmword [rsp + 0x90]
movaps xmm9, xmmword [rsp + 0xa0]
movaps xmm10, xmmword [rsp + 0xb0]
movaps xmm11, xmmword [rsp + 0xc0]
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov ebp, dword [r13 + 1]
add r13, 5
cmp bl, 0x53
je 0x453089
test ebp, ebp
jne 0x453321
mov rdi, qword [0x004b4fb0]
test rdi, rdi
je 0x453361
mov r12, qword [0x004b5230]
mov rax, qword [rdi + 8]
lea rcx, [0x00441f90]
mov rbp, qword [rax + 0x78]
mov rbx, qword [rax + 0xc8]
mov qword [rax + 0x78], rcx
lea rcx, [0x00446710]
jmp 0x452bbf
movsxd rdx, dword [r13 + 1]
lea rax, [r13 + 5]
mov qword [rsi], rax
lea r13, [rax + rdx]
jmp 0x45287f
movsxd rcx, dword [r13 + 1]
add r13, 5
mov rdi, rcx
call qword [sym.imp.python39.dll_PyTuple_New]
mov rbx, rax
test edi, edi
jg 0x452fa0
mov rax, qword [rbx + 8]
lea rcx, [0x00438a70]
mov r12, qword [0x004b5250]
mov rdi, qword [rax + 0xc8]
mov rbp, qword [rax + 0x78]
mov qword [rax + 0x78], rcx
lea rcx, [0x00441f20]
mov qword [rax + 0xc8], rcx
mov rdx, rbx
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_GetItem]
test rax, rax
je 0x453028
mov rdx, qword [rax + 8]
mov qword [rdx + 0x78], rbp
mov qword [rdx + 0xc8], rdi
mov qword [rsi], rax
jmp 0x45287b
cmp byte [r13 + 1], 5
lea rdi, [r13 + 2]
ja case.default.0x4529f2
movzx eax, byte [r13 + 1]
lea rdx, [0x004a3c98]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
movzx eax, byte [r13 + 1]
lea rbx, [r13 + 2]
test al, al
je 0x452f80
cmp al, 1
jne 0x453406
mov rcx, qword [0x004b4f18]
lea rdx, [0x004a3b17]
call qword [sym.imp.python39.dll_PyObject_GetAttrString]
mov qword [rsi], rax
mov r13, rbx
jmp 0x45287b
movzx eax, byte [r13 + 1]
lea rcx, [r13 + 2]
cmp al, 6
ja case.default.0x452a4f
lea rdx, [0x004a3cb0]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
movsxd rcx, dword [r13 + 1]
add r13, 5
mov rdi, rcx
call qword [sym.imp.python39.dll_PyList_New]
mov rbx, rax
test edi, edi
jg 0x452fc0
mov rax, qword [rbx + 8]
lea rcx, [0x00438a10]
mov r12, qword [0x004b5248]
mov rbp, qword [rax + 0x78]
mov rdi, qword [rax + 0xc8]
mov qword [rax + 0x78], rcx
lea rcx, [0x00441eb0]
jmp 0x45299c
mov rdx, r12
lea rcx, [rsp + 0x40]
mov r8d, 2
call 0x452780
mov rdx, qword [rsp + 0x48]
mov r13, rax
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x453079
movq xmm2, rdx
movq xmm0, rax
lea r14, [rsp + 0x50]
mov rcx, qword [sym.imp.python39.dll_PyComplex_Type]
punpcklqdq xmm0, xmm2
mov rdx, r14
movaps xmmword [rsp + 0x50], xmm0
call fcn.00402120
mov qword [rsi], rax
jmp 0x45287b
lea r14, [rsp + 0x50]
mov rdx, r12
mov r8d, 2
mov rcx, r14
call 0x452780
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
mov r13, rax
call qword [sym.imp.python39.dll_Py_GenericAlias]
jmp 0x452878
mov rax, qword [sym.imp.python39.dll__Py_FalseStruct]
mov r13, r12
mov qword [rsi], rax
jmp 0x45287b
movsxd rcx, dword [r13 + 1]
add r13, 5
mov rbp, rcx
call qword [sym.imp.python39.dll__PyDict_NewPresized]
lea ebx, [rbp - 1]
mov rdi, rax
test ebp, ebp
jle 0x452b97
mov rbp, qword [sym.imp.python39.dll_PyDict_SetItem]
lea r14, [rsp + 0x50]
mov rdx, r13
mov r8d, 2
mov rcx, r14
call 0x452780
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
mov r13, rax
call rbp
sub ebx, 1
jae 0x452b6f
mov rax, qword [rdi + 8]
lea rcx, [0x00442170]
mov r12, qword [0x004b5240]
mov rbx, qword [rax + 0xc8]
mov rbp, qword [rax + 0x78]
mov qword [rax + 0x78], rcx
lea rcx, [0x00442090]
mov qword [rax + 0xc8], rcx
mov rdx, rdi
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_GetItem]
test rax, rax
je 0x453040
mov rdx, qword [rax + 8]
mov qword [rdx + 0x78], rbp
mov qword [rdx + 0xc8], rbx
jmp 0x452878
lea rbx, [r13 + 5]
movsxd r13, dword [r13 + 1]
mov rcx, rbx
mov rdx, r13
add r13, rbx
call qword [sym.imp.python39.dll_PyByteArray_FromStringAndSize]
mov qword [rsi], rax
jmp 0x45287b
lea r14, [rsp + 0x50]
mov r8d, 3
mov rdx, r12
mov rcx, r14
call 0x452780
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
mov r13, rax
call qword [sym.imp.python39.dll_PySlice_New]
mov qword [rsi], rax
jmp 0x45287b
lea r14, [rsp + 0x50]
mov r8d, 3
mov rdx, r12
mov rcx, r14
call 0x452780
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
mov r13, rax
call fcn.0044aaa0
mov qword [rsi], rax
jmp 0x45287b
mov edx, 1
mov rcx, r12
lea r14, [rsp + 0x50]
add r13, 2
call qword [sym.imp.python39.dll_PyUnicode_FromStringAndSize]
mov rcx, r14
mov qword [rsp + 0x50], rax
call qword [sym.imp.python39.dll_PyUnicode_InternInPlace]
mov rax, qword [rsp + 0x50]
mov qword [rsi], rax
jmp 0x45287b
lea rbx, [r13 + 5]
movsxd r13, dword [r13 + 1]
lea r8, str.surrogatepass
mov rcx, rbx
mov rdx, r13
add r13, rbx
call qword [sym.imp.python39.dll_PyUnicode_DecodeUTF8]
mov qword [rsi], rax
jmp 0x45287b
mov rax, qword [sym.imp.python39.dll__Py_TrueStruct]
mov r13, r12
mov qword [rsi], rax
jmp 0x45287b
mov rcx, qword [r13 + 1]
add r13, 9
call qword [sym.imp.python39.dll_PyLong_FromLongLong]
mov r12, qword [0x004b5268]
mov rbx, rax
mov rdx, rbx
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_GetItem]
test rax, rax
jne 0x452878
mov r8, rbx
mov rdx, rbx
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_SetItem]
mov rax, rbx
jmp 0x452878
mov rax, qword [sym.imp.python39.dll__Py_NoneStruct]
mov r13, r12
mov qword [rsi], rax
jmp 0x45287b
mov ecx, dword [r13 + 1]
add r13, 5
call qword [sym.imp.python39.dll_PyLong_FromLong]
mov r12, qword [0x004b5268]
mov rbx, rax
jmp 0x452d20
mov rax, qword [r13 + 9]
movsd xmm0, qword [r13 + 1]
add r13, 0x11
movq xmm1, rax
call qword [sym.imp.python39.dll_PyComplex_FromDoubles]
mov qword [rsi], rax
jmp 0x45287b
mov rdi, qword [sym.imp.python39.dll_PyLong_FromLong]
xor ecx, ecx
lea rbx, [r13 + 6]
mov qword [rsp + 0x38], rdi
call rdi
mov ebp, dword [r13 + 2]
mov qword [rsp + 0x28], rbx
mov ecx, 0x40
mov r14, rax
movzx eax, byte [r13 + 1]
mov dword [rsp + 0x34], ebp
mov byte [rsp + 0x33], al
call rdi
mov r12, rax
test ebp, ebp
jle 0x453357
lea eax, [rbp - 1]
mov rdi, qword [sym.imp.python39.dll_PyNumber_InPlaceAdd]
lea rbp, [r13 + rax*8 + 0xe]
jmp 0x452e05
cmp rbx, rbp
je 0x452e45
mov rdx, r12
mov rcx, r14
add rbx, 8
call qword [sym.imp.python39.dll_PyNumber_InPlaceLshift]
mov rcx, qword [rbx - 8]
mov r14, rax
call qword [sym.imp.python39.dll_PyLong_FromUnsignedLongLong]
mov rcx, r14
mov r13, rax
mov rdx, rax
call rdi
sub qword [r13], 1
mov r14, rax
jne 0x452e00
mov rcx, r13
call qword [sym.imp.python39.dll__Py_Dealloc]
cmp rbx, rbp
jne 0x452e05
mov eax, dword [rsp + 0x34]
mov rdi, qword [rsp + 0x28]
lea r13, [rdi + rax*8]
sub qword [r12], 1
je 0x453060
cmp byte [rsp + 0x33], 0x2d
je 0x4530fe
mov r12, qword [0x004b5268]
mov rdx, r14
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_GetItem]
test rax, rax
jne 0x452878
mov r8, r14
mov rdx, r14
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_SetItem]
mov rax, r14
jmp 0x452878
movq xmm0, qword [r13 + 1]
add r13, 9
call qword [sym.imp.python39.dll_PyFloat_FromDouble]
mov r12, qword [0x004b5260]
lea rcx, [0x00441e90]
mov rbx, rax
mov rax, qword [rax + 8]
mov rbp, qword [rax + 0x78]
mov rdi, qword [rax + 0xc8]
jmp 0x45299c
mov edx, 1
mov rcx, r12
add r13, 2
call qword [sym.imp.python39.dll_PyBytes_FromStringAndSize]
mov rbx, rax
mov r12, qword [0x004b5258]
jmp 0x452d20
mov rcx, r12
call sub.msvcrt.dll_strlen
mov rcx, r12
mov rbx, rax
mov rdx, rax
call qword [sym.imp.python39.dll_PyBytes_FromStringAndSize]
lea r13, [r12 + rbx + 1]
mov r12, qword [0x004b5258]
mov rdi, rax
mov rdx, rax
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_GetItem]
test rax, rax
jne 0x452878
mov r8, rdi
mov rdx, rdi
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_SetItem]
mov rax, rdi
jmp 0x452878
lea rdi, [r13 + 5]
movsxd r13, dword [r13 + 1]
mov rcx, rdi
mov rdx, r13
add r13, rdi
call qword [sym.imp.python39.dll_PyBytes_FromStringAndSize]
mov rbx, rax
jmp 0x452eed
mov rcx, qword [0x004b4f18]
lea rdx, str.Ellipsis
call qword [sym.imp.python39.dll_PyObject_GetAttrString]
jmp 0x452a25
mov rdx, r13
lea rcx, [rax + 0x18]
mov r8d, edi
call 0x452780
mov r13, rax
jmp 0x452974
mov rcx, qword [rax + 0x18]
mov rdx, r13
mov r8d, edi
call 0x452780
mov r13, rax
jmp 0x452a74
mov r13, r12
nop dword [rax + rax]
add r13, 1
cmp byte [r13 - 1], 0
jne 0x452fe8
mov rcx, qword [0x004b4f18]
mov rdx, r12
call qword [sym.imp.python39.dll_PyObject_GetAttrString]
mov qword [rsi], rax
jmp 0x45287b
mov r13, r12
nop dword [rax + rax]
add r13, 1
cmp byte [r13 - 1], 0
jne 0x453018
jmp 0x452ff3
mov r8, rbx
mov rdx, rbx
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_SetItem]
mov rax, rbx
jmp 0x4529b8
mov r8, rdi
mov rdx, rdi
mov rcx, r12
call qword [sym.imp.python39.dll_PyDict_SetItem]
mov rax, rdi
jmp 0x452bdb
mov rcx, r12
call qword [sym.imp.python39.dll__Py_Dealloc]
cmp byte [rsp + 0x33], 0x2d
jne 0x452e68
jmp 0x4530fe
mov rax, qword [0x004a6520]
mov rax, qword [rax + 0x10]
jmp 0x452ad1
xor ecx, ecx
lea r12d, [rbp - 1]
call qword [sym.imp.python39.dll_PySet_New]
mov rdi, rax
test ebp, ebp
jle 0x4530da
mov rbp, qword [sym.imp.python39.dll_PySet_Add]
lea r14, [rsp + 0x50]
mov rdx, r13
mov r8d, 1
mov rcx, r14
call 0x452780
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
mov r13, rax
call rbp
mov eax, r12d
sub r12d, 1
test eax, eax
jg 0x4530a8
cmp bl, 0x53
jne 0x452909
mov r12, qword [0x004b5238]
jmp 0x452910
lea r14, [rsp + 0x50]
mov rcx, r14
call qword [sym.imp.python39.dll_PyUnicode_InternInPlace]
mov rax, qword [rsp + 0x50]
jmp 0x452878
mov ecx, 0xffffffff
mov rax, qword [rsp + 0x38]
call rax
mov rcx, r14
mov r12, rax
mov rdx, rax
call qword [sym.imp.python39.dll_PyNumber_InPlaceMultiply]
sub qword [r12], 1
mov r14, rax
jne 0x452e68
mov rcx, r12
call qword [sym.imp.python39.dll__Py_Dealloc]
jmp 0x452e68
mov rbx, qword [0x004b4fa8]
test rbx, rbx
je 0x4533c3
nop dword [rax]
mov rax, qword [rbx + 8]
mov r13, qword [0x004b5260]
lea rcx, [0x00441e90]
mov rdx, rbx
mov rbp, qword [rax + 0xc8]
mov r12, qword [rax + 0x78]
mov qword [rax + 0xc8], rcx
mov rcx, r13
call qword [sym.imp.python39.dll_PyDict_GetItem]
test rax, rax
je 0x453340
mov rdx, qword [rax + 8]
mov r13, rdi
mov qword [rdx + 0x78], r12
mov qword [rdx + 0xc8], rbp
mov qword [rsi], rax
jmp 0x45287b
mov rbx, qword [0x004b4fa0]
test rbx, rbx
jne 0x453148
pxor xmm0, xmm0
call qword [sym.imp.python39.dll_PyFloat_FromDouble]
movsd xmm0, qword [rax + 0x10]
orpd xmm0, xmmword [0x004a5390]
mov qword [0x004b4fa0], rax
mov rbx, rax
movsd qword [rax + 0x10], xmm0
jmp 0x453148
mov rbx, qword [0x004b4f98]
test rbx, rbx
jne 0x453148
movsd xmm0, qword [0x004a53a0]
call qword [sym.imp.python39.dll_PyFloat_FromDouble]
movsd xmm0, qword [rax + 0x10]
mov qword [0x004b4f98], rax
mov rbx, rax
andpd xmm0, xmm8
movsd qword [rax + 0x10], xmm0
jmp 0x453148
mov rbx, qword [0x004b4f90]
test rbx, rbx
jne 0x453148
movsd xmm0, qword [0x004a53a0]
call qword [sym.imp.python39.dll_PyFloat_FromDouble]
movsd xmm0, qword [rax + 0x10]
mov qword [0x004b4f90], rax
mov rbx, rax
andpd xmm0, xmm10
xorpd xmm0, xmm9
movsd qword [rax + 0x10], xmm0
jmp 0x453148
mov rbx, qword [0x004b4f88]
test rbx, rbx
jne 0x453148
movsd xmm0, qword [0x004a53a8]
call qword [sym.imp.python39.dll_PyFloat_FromDouble]
movsd xmm0, qword [rax + 0x10]
mov qword [0x004b4f88], rax
mov rbx, rax
andpd xmm0, xmm11
movsd qword [rax + 0x10], xmm0
jmp 0x453148
mov rbx, qword [0x004b4f80]
test rbx, rbx
jne 0x453148
movsd xmm0, qword [0x004a53a8]
call qword [sym.imp.python39.dll_PyFloat_FromDouble]
movsd xmm0, qword [rax + 0x10]
mov qword [0x004b4f80], rax
mov rbx, rax
andpd xmm0, xmm6
xorpd xmm0, xmm7
movsd qword [rax + 0x10], xmm0
jmp 0x453148
mov rax, qword [sym.imp.python39.dll_PyFunction_Type]
nop dword [rax]
mov qword [rsi], rax
mov r13, rcx
jmp 0x45287b
mov rax, qword [sym.imp.python39.dll_PyGen_Type]
jmp 0x4532d8
mov rax, qword [sym.imp.python39.dll_PyEllipsis_Type]
jmp 0x4532d8
mov rax, qword [sym.imp.python39.dll__Py_NotImplementedStruct]
mov rax, qword [rax + 8]
jmp 0x4532d8
mov rax, qword [sym.imp.python39.dll_PyCode_Type]
jmp 0x4532d8
mov rax, qword [sym.imp.python39.dll__Py_NoneStruct]
mov rax, qword [rax + 8]
jmp 0x4532d8
mov rax, qword [sym.imp.python39.dll_PyCFunction_Type]
jmp 0x4532d8
xor ecx, ecx
lea r12d, [rbp - 1]
call qword [sym.imp.python39.dll_PyFrozenSet_New]
mov rdi, rax
test ebp, ebp
jg 0x45309c
jmp 0x452909
mov r8, rbx
mov rdx, rbx
mov rcx, r13
call qword [sym.imp.python39.dll_PyDict_SetItem]
mov rax, rbx
jmp 0x453181
mov r13, qword [rsp + 0x28]
jmp 0x452e52
lea rcx, [0x004a3ae4]
call qword [sym.imp.python39.dll_PyBytes_FromString]
mov rcx, qword [sym.imp.python39.dll_PyFrozenSet_Type]
mov rdx, rax
call fcn.00451dd0
mov qword [0x004b4fb0], rax
mov rdi, rax
jmp 0x452909
movsx edx, bl
lea rcx, str.Missing_decoding_for__d_n
call fcn.0044f360
call sub.msvcrt.dll_abort
nop dword [rax]
mov edx, dword [rsp + 0x130]
lea rcx, str.Missing_values__d_n
sub edx, r15d
call fcn.0044f360
call sub.msvcrt.dll_abort
pxor xmm0, xmm0
call qword [sym.imp.python39.dll_PyFloat_FromDouble]
mov qword [0x004b4fa8], rax
mov rbx, rax
jmp 0x453148
mov edx, 0x5a
lea rcx, str.Missing_decoding_for__d_n
call fcn.0044f360
call sub.msvcrt.dll_abort
movzx edx, al
lea rcx, str.Missing_anon_value_for__d_n
call fcn.0044f360
call sub.msvcrt.dll_abort
movzx edx, al
lea rcx, str.Missing_special_value_for__d_n
call fcn.0044f360
call sub.msvcrt.dll_abort
nop
nop dword [rax + rax]
push r15
push r14
push r13
push r12
push rbx
sub rsp, 0x20
mov r10, qword [rcx + 8]
mov rax, qword [r10 + 0x90]
mov r13, r8
test rax, rax
je 0x4534b0
call rax
mov r12, rax
test r12, r12
je 0x4535a0
mov rdx, qword [r12 + 8]
mov rax, qword [rdx + 0x80]
test rax, rax
je 0x4535b0
mov rdx, r13
xor r8d, r8d
mov rcx, r12
call rax
mov r13, rax
test rax, rax
je 0x4534f0
mov rax, qword [sym.imp.python39.dll__PyRuntime]
mov rax, qword [rax + 0x1f0]
mov rcx, qword [rax + 0x58]
test rcx, rcx
jne 0x4535d8
sub qword [r12], 1
je 0x4534e0
mov rax, r13
add rsp, 0x20
pop rbx
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, byte [rdx + 0x20]
mov r8, qword [r10 + 0x40]
and eax, 0x60
test r8, r8
je 0x453640
cmp al, 0x60
je 0x453590
mov rdx, qword [rdx + 0x38]
call r8
mov r12, rax
jmp 0x453445
mov rcx, r12
call qword [sym.imp.python39.dll__Py_Dealloc]
jmp 0x453498
mov rbx, qword [sym.imp.python39.dll__PyRuntime]
mov rax, qword [rbx + 0x1f0]
cmp qword [rax + 0x58], 0
jne 0x453491
mov rax, qword [sym.imp.python39.dll_PyExc_SystemError]
lea rcx, [0x004a3310]
mov r14, qword [rax]
call qword [sym.imp.python39.dll_PyUnicode_FromString]
mov r8, rax
mov rax, qword [rbx + 0x1f0]
mov rcx, qword [rax + 0x58]
mov rbx, qword [rax + 0x60]
mov qword [rax + 0x58], r14
mov r15, qword [rax + 0x68]
add qword [r14], 1
mov qword [rax + 0x60], r8
mov qword [rax + 0x68], 0
test rcx, rcx
je 0x453555
sub qword [rcx], 1
je 0x45366f
test rbx, rbx
je 0x453564
sub qword [rbx], 1
je 0x45367a
test r15, r15
je 0x453491
sub qword [r15], 1
jne 0x453491
mov rcx, r15
xor r13d, r13d
call qword [sym.imp.python39.dll__Py_Dealloc]
jmp 0x453491
add rdx, 0x30
jmp 0x4534d0
xor r13d, r13d
jmp 0x453498
mov rax, qword [sym.imp.python39.dll_PyExc_TypeError]
mov r8, qword [rdx + 0x18]
xor r13d, r13d
lea rdx, [0x004a32f4]
mov rcx, qword [rax]
call qword [sym.imp.python39.dll_PyErr_Format]
jmp 0x453491
pxor xmm0, xmm0
mov r15, qword [rax + 0x60]
mov r14, qword [rax + 0x68]
mov qword [rax + 0x68], 0
movups xmmword [rax + 0x58], xmm0
sub qword [rcx], 1
je 0x453630
test r15, r15
je 0x45360a
sub qword [r15], 1
jne 0x45360a
mov rcx, r15
call qword [sym.imp.python39.dll__Py_Dealloc]
test r14, r14
je 0x453491
sub qword [r14], 1
jne 0x453491
mov rcx, r14
call qword [sym.imp.python39.dll__Py_Dealloc]
jmp 0x453491
call qword [sym.imp.python39.dll__Py_Dealloc]
jmp 0x4535f6
lea r9, [rdx + 0x30]
cmp al, 0x60
je 0x45364c
mov r9, qword [rdx + 0x38]
mov rax, qword [sym.imp.python39.dll_PyExc_AttributeError]
mov r8, qword [r10 + 0x18]
lea rdx, str._s_object_has_no_attribute__s
xor r13d, r13d
mov rcx, qword [rax]
call qword [sym.imp.python39.dll_PyErr_Format]
jmp 0x453498
call qword [sym.imp.python39.dll__Py_Dealloc]
jmp 0x453555
mov rcx, rbx
call qword [sym.imp.python39.dll__Py_Dealloc]
jmp 0x453564
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
cmp byte [0x004b4fb9], 0
mov r12, rcx
mov rbp, rdx
je 0x4848e8
mov ecx, 0xa
lea rdi, [0x004a533a]
mov rsi, rbp
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x484a00
mov rsi, qword [0x004b4ed8]
jmp 0x4848a5
lea rsi, [rdx + rax + 4]
mov rdx, rsi
mov rcx, rbp
call sub.msvcrt.dll_strcmp
mov rcx, rsi
mov ebx, eax
call sub.msvcrt.dll_strlen
lea rdx, [rsi + rax + 1]
mov eax, dword [rdx]
test ebx, ebx
jne 0x4848a0
movzx r8d, word [rdx + 4]
lea r9, [rdx + 6]
mov rcx, r12
mov rdx, r9
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp 0x452780
mov r8d, 0xa
mov edx, 3
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindResourceA]
xor ecx, ecx
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov qword [0x004b4ed8], rax
mov rdx, rax
mov r9d, dword [rax]
lea rax, [rax + 4]
mov qword [0x004b4ed8], rax
mov eax, dword [rdx + 4]
lea rcx, [rdx + 8]
mov qword [0x004b4ed8], rcx
test eax, eax
je 0x4849e8
sub eax, 1
lea r8, [rdx + rax + 9]
mov eax, 0xffffffff
nop word [rax + rax]
movzx edx, byte [rcx]
xor edx, eax
mov eax, edx
and edx, 1
neg edx
shr eax, 1
and edx, 0xedb88320
xor eax, edx
mov edx, eax
and eax, 1
neg eax
shr edx, 1
and eax, 0xedb88320
xor edx, eax
mov eax, edx
and edx, 1
neg edx
shr eax, 1
and edx, 0xedb88320
xor eax, edx
mov edx, eax
and eax, 1
neg eax
shr edx, 1
and eax, 0xedb88320
xor edx, eax
mov eax, edx
and edx, 1
neg edx
shr eax, 1
and edx, 0xedb88320
xor eax, edx
mov edx, eax
and eax, 1
neg eax
shr edx, 1
and eax, 0xedb88320
xor edx, eax
mov eax, edx
shr eax, 1
and edx, 1
add rcx, 1
neg edx
and edx, 0xedb88320
xor eax, edx
mov edx, eax
and eax, 1
neg eax
shr edx, 1
and eax, 0xedb88320
xor eax, edx
cmp r8, rcx
jne 0x484950
not eax
cmp r9d, eax
jne 0x484a9d
mov byte [0x004b4fb9], 1
jmp 0x484879
cmp byte [0x004b4fb8], 0
jne 0x484897
mov rbx, qword [sym.imp.python39.dll_PyDict_New]
lea rsi, [0x004b46c8]
call rbx
mov qword [0x004b5268], rax
call rbx
mov qword [0x004b5260], rax
call rbx
mov qword [0x004b5258], rax
call rbx
mov qword [0x004b5250], rax
call rbx
mov qword [0x004b5248], rax
call rbx
mov qword [0x004b5240], rax
call rbx
mov qword [0x004b5238], rax
call rbx
mov rdi, qword [sym.imp.python39.dll_PyLong_FromLong]
mov rbx, 0xfffffffffffffffb
mov qword [0x004b5230], rax
nop dword [rax]
mov ecx, ebx
call rdi
add qword [rax], 1
mov qword [rsi + rbx*8], rax
add rbx, 1
cmp rbx, 0x102
jne 0x484a78
mov byte [0x004b4fb8], 1
jmp 0x484897
lea rcx, str.Error__corrupted_constants_object
call sub.msvcrt.dll_puts
call sub.msvcrt.dll_abort
nop
nop
push r12
push rbx
sub rsp, 0x48
lea r9, [0x0049da00]
mov r12, rdx
mov rbx, r8
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
lea r8, str.O:coroutine
mov rdx, rbx
mov rcx, r12
call qword [sym.imp.python39.dll_PyArg_ParseTupleAndKeywords]
test eax, eax
je 0x484b38
mov rax, qword [rsp + 0x38]
mov rcx, qword [0x004a62f0]
cmp qword [rax + 8], rcx
je 0x484b20
mov rcx, qword [0x004b5298]
mov r8, rbx
mov rdx, r12
mov rax, qword [rcx + 8]
call qword [rax + pe_nt_image_headers64]
add rsp, 0x48
pop rbx
pop r12
ret
mov rdx, qword [rax + 0x30]
mov eax, dword [rdx + 0x24]
test al, 0x20
je 0x484b00
or ah, 1
mov dword [rdx + 0x24], eax
jmp 0x484b00
xor eax, eax
add rsp, 0x48
pop rbx
pop r12
ret