Function at 0x585e90
Capabilities:
Delete file
Write file on windows

Disassembly:
push rbp
sub rsp, 0x110
mov rbp, rsp
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x68], rbp
mov qword [rbp + 0x120], rcx
mov qword [rbp + 0x128], rdx
lea rcx, [rbp + 0x120]
call fcn.0040e7a0
nop
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x20a
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
mov ecx, dword [rbp + 0x7c]
sub ecx, dword [rbp + 0xe8]
cmp eax, ecx
jle 0x585f2a
lea rcx, [rbp + 0xe8]
lea rdx, [rbp + 0x100]
lea r8, [rbp + 0xe0]
call fcn.00563310
mov eax, dword [rbp + 0xe0]
cmp eax, dword [rbp + 0x10c]
jle 0x585f59
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xe8]
lea r9, [rbp + 0xe4]
call fcn.0053fa30
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xf4]
mov dword [rbp + 0x104], eax
mov dword [rbp + 0xfc], 0
cmp dword [rbp + 0xfc], 1
jge 0x585fec
add dword [rbp + 0xfc], 1
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xf0]
imul eax, eax, 0x3f7
mov dword [rbp + 0xf8], eax
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xf8], eax
jne 0x585fd0
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x100], eax
cmp dword [rbp + 0xfc], 1
jl 0x585f7e
nop
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x1ce
mov dword [rbp + 0xe8], eax
lea rcx, [rbp + 0xe0]
lea rdx, [rbp + 0xfc]
lea r8, [rbp + 0x108]
lea r9, [rbp + 0x7c]
lea rax, [rbp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.00581100
mov eax, dword [rbp + 0x104]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x586064
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xe8]
lea r9, [rbp + 0xe4]
call fcn.0053fa30
mov byte [rbp + 0xdf], 0
nop
mov eax, dword [rbp + 0x104]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x5860aa
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xe8]
lea r9, [rbp + 0xe4]
call fcn.0053fa30
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xf4]
mov dword [rbp + 0x104], eax
mov dword [rbp + 0xfc], 0
cmp dword [rbp + 0xfc], 1
jge 0x586133
add dword [rbp + 0xfc], 1
mov eax, dword [rbp + 0xe0]
mov dword [rbp + 0x100], eax
mov eax, 0x54
sub eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0x78]
cmp dword [rbp + 0xf8], eax
jne 0x586118
mov eax, dword [rbp + 0xe4]
mov ecx, eax
shl eax, 9
sub eax, ecx
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xf4]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0xfc], 1
jl 0x5860cf
nop
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xf4]
add eax, 0x34d
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xe8]
cmp eax, ecx
jge 0x58617b
mov eax, dword [rbp + 0x78]
sub eax, 0x198
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0x104]
cmp eax, dword [rbp + 0x100]
jle 0x5861a2
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
mov dword [rbp + 0xf4], eax
mov eax, dword [rbp + 0xec]
add eax, 0x8c
mov dword [rbp + 0xf0], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x58613e
nop
mov eax, dword [rbp + 0xe0]
cmp eax, dword [rbp + 0x10c]
jle 0x58621c
lea rcx, [rbp + 0x10c]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xec]
lea r9, [rbp + 0xe4]
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0xf4]
mov qword [rsp + 0x28], rax
call fcn.0053ec40
lea rcx, [0x005876b8]
lea rdx, [0x005876dc]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x56
jge 0x58624d
mov eax, 0x52
sub eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x58628e
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xe8]
lea r9, [rbp + 0xe4]
call fcn.0053fa30
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x5862c8
lea rcx, [rbp + 0x10c]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xec]
call fcn.0053ea20
lea rcx, [rbp + 0x58]
mov rdx, qword [rbp + 0x120]
call fcn.0040fc50
lea rcx, [rbp + 0x60]
mov rdx, qword [rbp + 0x58]
call fcn.0042d2a0
lea rcx, [rbp + 0x50]
mov rdx, qword [rbp + 0x60]
call fcn.0040fc80
mov rcx, qword [rbp + 0x50]
call fcn.005851e0
mov eax, dword [rbp + 0xe0]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x104], eax
lea rcx, [rbp + 0xc0]
lea rdx, [rbp + 0x98]
call fcn.00581240
test al, al
je 0x58734f
lea rcx, [0x005876f8]
lea rdx, [0x005876dc]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x56
jge 0x586356
mov eax, dword [rbp + 0x7c]
imul eax, eax, 0xb6
mov dword [rbp + 0xf8], eax
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x104], eax
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xfc]
mov dword [rbp + 0xe0], eax
mov eax, 0x8b
sub eax, dword [rbp + 0xf0]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp dword [rbp + 0x108], eax
jne 0x5863b6
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xf4]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xfc]
add eax, 0x35a
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xe8]
add eax, 0xa0
mov dword [rbp + 0xf0], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x586372
nop
lea rcx, [0x0058771c]
lea rdx, [0x005876dc]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x5a
jge 0x58641c
mov eax, 0x79
sub eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xf4]
mov dword [rbp + 0x104], eax
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
mov ecx, dword [rbp + 0x7c]
sub ecx, dword [rbp + 0xe8]
cmp eax, ecx
jle 0x58645a
lea rcx, [rbp + 0xe8]
lea rdx, [rbp + 0x100]
call fcn.00563130
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov dword [rbp + 0x10c], 0
mov eax, dword [rbp + 0xe0]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x104], eax
mov eax, dword [rbp + 0xfc]
mov dword [rbp + 0xe0], eax
mov eax, dword [rbp + 0xf8]
add eax, 0x23
mov dword [rbp + 0xfc], eax
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
mov ecx, dword [rbp + 0x7c]
sub ecx, dword [rbp + 0xe8]
cmp eax, ecx
jle 0x5864cc
mov eax, dword [rbp + 0x78]
sub eax, 0x1ad
mov dword [rbp + 0xec], eax
add dword [rbp + 0x10c], 1
cmp dword [rbp + 0x10c], 3
jne 0x586477
nop
mov eax, dword [rbp + 0xe0]
cmp eax, dword [rbp + 0xfc]
jle 0x586509
lea rcx, [rbp + 0x10c]
lea rdx, [rbp + 0x108]
lea r8, [rbp + 0xec]
lea r9, [rbp + 0x78]
call fcn.0053dae0
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x21f
mov dword [rbp + 0x78], eax
lea rcx, [rbp + 0xe0]
lea rdx, [rbp + 0x10c]
call fcn.00584f20
mov rcx, qword [rbp + 0x120]
call fcn.0040f580
lea rcx, [rbp + 0x48]
mov rdx, rax
call fcn.0040f4a0
mov rcx, qword [rbp + 0x48]
call fcn.00582930
test al, al
je 0x586564
mov rcx, qword [rbp + 0x120]
call fcn.0040f580
mov rcx, rax
call sub.kernel32.dll_DeleteFileW
lea rcx, [rbp + 0x100]
lea rdx, [rbp + 0xfc]
lea r8, [rbp + 0xf8]
lea r9, [rbp + 0x7c]
lea rax, [rbp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.00581100
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x238
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xe0]
cmp eax, dword [rbp + 0x10c]
jle 0x5865bb
lea rcx, [rbp + 0x10c]
lea rdx, [rbp + 0xf0]
call fcn.0053e4e0
lea rcx, [rbp + 0x80]
call fcn.0040e5d0
mov eax, dword [rbp + 0xe0]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060ed40]
call fcn.0040fe40
mov eax, dword [rbp + 0xe8]
add eax, 0x145
mov dword [rbp + 0x7c], eax
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060eca0]
call fcn.0040fe40
mov eax, dword [rbp + 0xe0]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x104], eax
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060ece0]
call fcn.0040fe40
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
mov eax, dword [rbp + 0x78]
sub eax, 0x19f
mov dword [rbp + 0x7c], eax
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
mov eax, dword [rbp + 0xe0]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
lea rcx, [rbp + 0x80]
lea rdx, [0x00587740]
call fcn.0040fe40
mov eax, dword [rbp + 0xf8]
sub eax, dword [rbp + 0xf0]
mov ecx, dword [rbp + 0xec]
sub ecx, dword [rbp + 0x78]
cmp eax, ecx
jle 0x5866b4
mov eax, dword [rbp + 0x104]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060ece0]
call fcn.0040fe40
mov eax, dword [rbp + 0x78]
sub eax, 0x189
mov dword [rbp + 0xec], eax
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
lea rcx, [rbp + 0x80]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
mov eax, dword [rbp + 0x78]
sub eax, 0x19e
mov dword [rbp + 0x7c], eax
lea rcx, [0x00587750]
lea rdx, [0x005876dc]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x52
jge 0x586749
mov eax, dword [rbp + 0xf8]
add eax, 0x36
mov dword [rbp + 0xfc], eax
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x586792
lea rcx, [rbp + 0x7c]
lea rdx, [rbp + 0x78]
lea r8, [rbp + 0x100]
lea r9, [rbp + 0xe0]
call fcn.0055d570
lea rcx, [rbp + 0x100]
lea rdx, [rbp + 0xfc]
lea r8, [rbp + 0xf8]
lea r9, [rbp + 0x7c]
lea rax, [rbp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.00581100
mov eax, dword [rbp + 0x104]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x5867f7
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xe8]
lea r9, [rbp + 0xe4]
call fcn.00540aa0
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0xe4], eax
mov dword [rbp + 0x10c], 0
cmp dword [rbp + 0x10c], 2
jge 0x586879
add dword [rbp + 0x10c], 1
mov eax, dword [rbp + 0xfc]
mov dword [rbp + 0xe0], eax
mov eax, dword [rbp + 0xec]
add eax, 0x91
mov dword [rbp + 0xf0], eax
mov eax, dword [rbp + 0x7c]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0x100]
jle 0x58685e
mov eax, dword [rbp + 0xf4]
mov dword [rbp + 0x100], eax
mov eax, 0xa2
sub eax, dword [rbp + 0xf0]
mov dword [rbp + 0xf8], eax
cmp dword [rbp + 0x10c], 2
jl 0x58681c
nop
lea rcx, [0x00587774]
lea rdx, [0x005876dc]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x53
jge 0x5868ab
mov eax, 0x3b
sub eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xf4]
mov dword [rbp + 0x104], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0x7c]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x58690c
lea rcx, [rbp + 0xec]
lea rdx, [rbp + 0xe4]
lea r8, [rbp + 0x100]
lea r9, [rbp + 0xf4]
lea rax, [rbp + 0xf8]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x7c]
mov qword [rsp + 0x28], rax
call fcn.0055e030
mov eax, dword [rbp + 0x78]
sub eax, 0x176
mov dword [rbp + 0x7c], eax
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0x10c]
mov dword [rbp + 0xe0], eax
mov eax, dword [rbp + 0xec]
add eax, 0x81
mov dword [rbp + 0xf0], eax
mov eax, dword [rbp + 0x7c]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0x100]
jle 0x586964
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
add eax, 0x3d1
mov dword [rbp + 0xf4], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x586922
nop
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x218
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xf4]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0x108]
add ecx, dword [rbp + 0x7c]
cmp eax, ecx
jge 0x5869e5
lea rcx, [rbp + 0xf0]
lea rdx, [rbp + 0x78]
lea r8, [rbp + 0x104]
lea r9, [rbp + 0x100]
lea rax, [rbp + 0xfc]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x108]
mov qword [rsp + 0x28], rax
call fcn.00548890
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
mov dword [rbp + 0xf4], eax
mov eax, dword [rbp + 0x108]
add eax, 0x38
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
mov ecx, dword [rbp + 0x7c]
sub ecx, dword [rbp + 0xe8]
cmp eax, ecx
jle 0x586a48
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x202
mov dword [rbp + 0xe8], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x5869ef
nop
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x586a77
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0x7c]
call fcn.0053fbe0
mov rcx, qword [rbp + 0x120]
call fcn.0040f580
mov rcx, rax
mov edx, 0xc0000000
mov r8d, 3
lea r9, [rbp + 0xc0]
mov dword [rsp + 0x20], 1
mov dword [rsp + 0x28], 0x80
mov qword [rsp + 0x30], 0
call sub.kernel32.dll_CreateFileW
mov dword [rbp + 0x94], eax
call sub.kernel32.dll_GetLastError_2
mov dword [rbp + 0x8c], eax
mov eax, dword [rbp + 0x94]
cmp rax, 0xffffffffffffffff
je 0x58734f
cmp dword [rbp + 0x8c], 0
jne 0x58734f
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0x10c]
add eax, 0x3d7
mov dword [rbp + 0xf4], eax
mov eax, dword [rbp + 0xf8]
sub eax, dword [rbp + 0xf0]
mov ecx, dword [rbp + 0xec]
sub ecx, dword [rbp + 0x78]
cmp eax, ecx
jle 0x586b2a
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xf4]
add eax, 0x347
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xe8]
add eax, 0x8d
mov dword [rbp + 0xf0], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 4
jne 0x586af0
nop
lea rcx, [rbp + 0xf4]
call fcn.00585a90
mov eax, dword [rbp + 0xe0]
cmp eax, dword [rbp + 0xfc]
jle 0x586b7e
call fcn.0053dc80
lea rcx, [rbp + 0xe0]
lea rdx, [rbp + 0xfc]
lea r8, [rbp + 0x108]
call fcn.005827d0
mov dword [rbp + 0xfc], 0
cmp dword [rbp + 0xfc], 1
jge 0x586c1e
add dword [rbp + 0xfc], 1
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, 0x8f
sub eax, dword [rbp + 0xf0]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0xf0]
mov ecx, dword [rbp + 0xec]
sub ecx, dword [rbp + 0x78]
cmp eax, ecx
jle 0x586c02
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x1f9
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0xfc], 1
jl 0x586bab
nop
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x1e6
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x586c6f
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xe8]
lea r9, [rbp + 0x104]
call fcn.00540aa0
mov eax, dword [rbp + 0xe0]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xfc]
mov dword [rbp + 0xe0], eax
mov eax, 0x37
sub eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0xf8]
sub eax, dword [rbp + 0x108]
mov ecx, dword [rbp + 0xec]
sub ecx, dword [rbp + 0x78]
cmp eax, ecx
jle 0x586ce8
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x1e1
mov dword [rbp + 0xe8], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x586c8c
nop
mov eax, dword [rbp + 0xf4]
cmp eax, dword [rbp + 0x10c]
jle 0x586d1a
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
call fcn.0053fbe0
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
mov dword [rbp + 0xe0], eax
mov eax, dword [rbp + 0xf0]
imul eax, eax, 0x1d
mov dword [rbp + 0xfc], eax
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp dword [rbp + 0x108], eax
jne 0x586d75
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x586d24
nop
mov dword [rbp + 0xfc], 0
cmp dword [rbp + 0xfc], 1
jge 0x586df6
add dword [rbp + 0xfc], 1
mov eax, dword [rbp + 0xe0]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x7c]
imul eax, eax, 0x16
mov dword [rbp + 0xf8], eax
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xf8], eax
jne 0x586ddb
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x221
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xf4]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0xfc], 1
jl 0x586d99
nop
mov dword [rbp + 0xfc], 0
cmp dword [rbp + 0xfc], 1
jge 0x586e68
add dword [rbp + 0xfc], 1
mov eax, dword [rbp + 0xe0]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x7c]
imul eax, eax, 0x34
mov dword [rbp + 0xf8], eax
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xf8], eax
jne 0x586e4c
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x21e
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x104], eax
cmp dword [rbp + 0xfc], 1
jl 0x586e0a
nop
mov dword [rbp + 0x108], 0
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
add eax, 0x3d1
mov dword [rbp + 0xf4], eax
mov eax, dword [rbp + 0xe8]
add eax, 0x76
mov dword [rbp + 0x7c], eax
mov eax, dword [rbp + 0x7c]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0x100]
jle 0x586ec7
mov eax, dword [rbp + 0xe0]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xfc]
mov dword [rbp + 0xe0], eax
add dword [rbp + 0x108], 1
cmp dword [rbp + 0x108], 4
jne 0x586e73
nop
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xf4]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x586f4b
lea rcx, [rbp + 0xf0]
lea rdx, [rbp + 0xe8]
lea r8, [rbp + 0xe4]
lea r9, [rbp + 0x100]
lea rax, [rbp + 0xf4]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0xf8]
mov qword [rsp + 0x28], rax
call fcn.00555270
mov rcx, qword [rbp + 0x128]
call fcn.0053e8e0
mov ecx, dword [rbp + 0x94]
mov rdx, qword [rbp + 0x128]
mov rdx, qword [rdx + 8]
mov r8d, eax
lea r9, [rbp + 0x90]
mov qword [rsp + 0x20], 0
call sub.kernel32.dll_WriteFile_1
test eax, eax
setne al
mov byte [rbp + 0xdf], al
mov eax, dword [rbp + 0xe0]
imul eax, dword [rbp + 0x10c]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xf4]
mov dword [rbp + 0xe4], eax
mov dword [rbp + 0x10c], 0
cmp dword [rbp + 0x10c], 2
jge 0x58702b
add dword [rbp + 0x10c], 1
mov eax, dword [rbp + 0xfc]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xf8]
add eax, 0x3a
mov dword [rbp + 0xfc], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xf8], eax
jne 0x58700f
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x100], eax
cmp dword [rbp + 0x10c], 2
jl 0x586fc3
nop
mov eax, dword [rbp + 0x78]
sub eax, 0x191
mov dword [rbp + 0xec], eax
lea rcx, [rbp + 0xfc]
call fcn.005390e0
mov eax, dword [rbp + 0xe0]
cmp eax, dword [rbp + 0xfc]
jle 0x58705a
call fcn.0053dc80
lea rcx, [rbp + 0x100]
lea rdx, [rbp + 0xfc]
lea r8, [rbp + 0xf8]
lea r9, [rbp + 0x7c]
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x28], rax
call fcn.00580da0
mov eax, dword [rbp + 0xe0]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x104], eax
mov dword [rbp + 0x10c], 0
cmp dword [rbp + 0x10c], 2
jge 0x58710f
add dword [rbp + 0x10c], 1
mov eax, dword [rbp + 0xe0]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x7c]
imul eax, eax, 0x3a
mov dword [rbp + 0x108], eax
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0x104]
cmp dword [rbp + 0x108], eax
jne 0x5870fa
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xe0]
mov dword [rbp + 0x100], eax
cmp dword [rbp + 0x10c], 2
jl 0x5870b5
nop
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x211
mov dword [rbp + 0xe8], eax
lea rcx, [rbp + 0xe0]
lea rdx, [rbp + 0x10c]
call fcn.00584100
mov ecx, dword [rbp + 0x94]
call sub.kernel32.dll_CloseHandle_1
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x587189
lea rcx, [rbp + 0xe8]
lea rdx, [rbp + 0x104]
lea r8, [rbp + 0x100]
lea r9, [rbp + 0xfc]
lea rax, [rbp + 0x108]
mov qword [rsp + 0x20], rax
call fcn.005625a0
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xfc]
add eax, 0x387
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
mov ecx, dword [rbp + 0x7c]
sub ecx, dword [rbp + 0xe8]
cmp eax, ecx
jle 0x5871cd
mov eax, dword [rbp + 0x78]
sub eax, 0x1b2
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0x100]
cmp eax, dword [rbp + 0xe0]
jge 0x5871f3
mov eax, dword [rbp + 0xfc]
add eax, 0x37c
mov dword [rbp + 0xe0], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x58721e
mov eax, dword [rbp + 0xe8]
add eax, 0x166
mov dword [rbp + 0x7c], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x587193
nop
lea rcx, [rbp + 0xe0]
lea rdx, [rbp + 0x10c]
lea r8, [rbp + 0x108]
lea r9, [rbp + 0xec]
call fcn.00583350
jmp 0x58734f
mov eax, dword [rbp + 0xe0]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x104], eax
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xfc]
add eax, 0x352
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
mov ecx, dword [rbp + 0xec]
sub ecx, dword [rbp + 0x78]
cmp eax, ecx
jle 0x5873a5
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x21d
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0xe0]
sub eax, dword [rbp + 0xfc]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x10c]
mov dword [rbp + 0xe0], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x58736b
nop
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xe0]
mov dword [rbp + 0x78], eax
mov dword [rbp + 0x10c], 0
cmp dword [rbp + 0x10c], 1
jge 0x587482
add dword [rbp + 0x10c], 1
mov eax, dword [rbp + 0xf4]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xf8]
add eax, 0x3fd
mov dword [rbp + 0xfc], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x58744e
mov eax, dword [rbp + 0x78]
sub eax, 0x187
mov dword [rbp + 0x7c], eax
mov eax, dword [rbp + 0xec]
sub eax, dword [rbp + 0x100]
cmp eax, dword [rbp + 0xe0]
jge 0x587475
mov eax, dword [rbp + 0xfc]
imul eax, dword [rbp + 0xf8]
mov dword [rbp + 0x100], eax
cmp dword [rbp + 0x10c], 1
jl 0x5873fa
nop
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x1d8
mov dword [rbp + 0xe8], eax
lea rcx, [0x005877bc]
lea rdx, [0x005876dc]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x55
jge 0x5874c6
mov eax, 0x70
sub eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x100]
add eax, dword [rbp + 0xf4]
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x587527
lea rcx, [rbp + 0x7c]
lea rdx, [rbp + 0x78]
lea r8, [rbp + 0x100]
lea r9, [rbp + 0xe0]
lea rax, [rbp + 0x10c]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x28], rax
call fcn.00555270
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xf4]
add eax, 0x34d
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xe8]
add eax, 0x92
mov dword [rbp + 0xf0], eax
mov eax, dword [rbp + 0x78]
sub eax, dword [rbp + 0x104]
cmp dword [rbp + 0xf0], eax
jne 0x587578
mov eax, dword [rbp + 0x100]
sub eax, dword [rbp + 0xf4]
mov dword [rbp + 0x104], eax
mov eax, dword [rbp + 0xf4]
add eax, 0x362
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0xfc]
add eax, dword [rbp + 0xf8]
mov ecx, dword [rbp + 0xf0]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x5875b5
mov eax, dword [rbp + 0xe8]
sub eax, 0x16d
mov dword [rbp + 0x7c], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 3
jne 0x587531
nop
lea rcx, [rbp + 0xe0]
lea rdx, [rbp + 0xfc]
lea r8, [rbp + 0x108]
lea r9, [rbp + 0x7c]
lea rax, [rbp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.00581100
mov eax, dword [rbp + 0x104]
imul eax, eax, 0x21a
mov dword [rbp + 0x78], eax
nop
lea rcx, [rbp + 0x48]
mov edx, 2
call fcn.0040e710
lea rcx, [rbp + 0x58]
mov edx, 2
call fcn.0040e6b0
lea rcx, [rbp + 0x80]
call fcn.0040e5d0
lea rcx, [rbp + 0x120]
call fcn.0040e670
movzx rax, byte [rbp + 0xdf]
lea rsp, [rbp + 0x110]
pop rbp
ret