Function at 0x4209e0
Capabilities:
Terminate process
Write file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x24
mov esi, edx
mov edi, ecx
movsd xmm0, qword [0x526268]
movsd qword [esp + 0x1c], xmm0
push edx
call fcn.00431a20
add esp, 4
cmp eax, 8
jne 0x420a47
push esi
call fcn.00432ed0
add esp, 4
test eax, eax
je 0x420a4d
mov ecx, 0x80001b
nop dword [eax]
movzx edx, byte [eax]
add edx, 0xfffffff7
cmp edx, 0x17
ja 0x420a33
bt ecx, edx
jae 0x420a33
inc eax
jmp 0x420a20
push 7
push 0x51f6fb
push eax
call fcn.00428de0
add esp, 0xc
test eax, eax
je 0x420a55
mov eax, dword [edi + 0x44]
mov dword [edi + 0x4c], eax
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret
push esi
call fcn.0042be30
add esp, 4
mov dword [esp], 0
cmp eax, 0x64
jne 0x420e64
xor ebp, ebp
xor ebx, ebx
mov dword [esp], 0
mov dword [esp + 0xc], esi
jmp 0x420a9e
mov esi, dword [esp + 0xc]
push esi
call fcn.0042be30
add esp, 4
cmp eax, 0x64
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 4]
jne 0x420e64
push 0
push esi
call fcn.0042d110
add esp, 8
mov dword [esp + 0x14], eax
push 1
push esi
call fcn.00431d90
add esp, 8
mov dword [esp + 8], eax
push 3
push esi
call fcn.0042d110
add esp, 8
mov dword [esp + 0x18], eax
cmp ebp, ebx
jge 0x420ae0
mov dword [esp + 0x10], ebx
mov esi, ebp
mov ebp, dword [esp + 8]
jmp 0x420c43
mov dword [esp + 4], ebp
test ebp, ebp
jne 0x420bf4
push 0
push esi
call fcn.00432060
add esp, 8
push 0x526270
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
push 1
push esi
call fcn.00432060
add esp, 8
push 0x526275
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
push 2
push esi
call fcn.00432060
add esp, 8
push 0x52627c
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
push 3
push esi
call fcn.00432060
add esp, 8
push 0x52627f
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
push 4
push esi
call fcn.00432060
add esp, 8
push 0x526282
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
push 5
push esi
call fcn.00432060
add esp, 8
push 0x526285
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
push 6
push esi
call fcn.00432060
add esp, 8
push 0x526288
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
push 7
push esi
call fcn.00432060
add esp, 8
push 0x52628b
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420e7b
lea esi, [ebx*4 + 0x190]
push 0
push esi
push dword [edi + 0x264]
call fcn.00425220
add esp, 0xc
mov dword [edi + 0x264], eax
test eax, eax
je 0x420e8f
push 0
push esi
push dword [esp + 8]
call fcn.00425220
add esp, 0xc
mov dword [esp], eax
test eax, eax
mov ebp, dword [esp + 8]
je 0x420e8f
add ebx, 0x64
mov dword [esp + 0x10], ebx
mov esi, dword [esp + 4]
mov ebx, esi
sub ebx, dword [esp + 0x14]
push 0x52623c
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
mov ecx, 1
test eax, eax
je 0x420cc5
push 0x526242
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420cc0
push 0x526249
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420cc0
push 0x526250
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
mov ecx, 1
je 0x420cc5
push 0x52625b
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
xor ecx, ecx
test eax, eax
sete cl
jmp 0x420cc5
mov ecx, 1
add ebx, dword [esp + 0x18]
mov eax, dword [esp]
mov dword [eax + esi*4], ecx
mov eax, dword [edi + 0x264]
mov dword [eax + esi*4], 0
lea eax, [esi + 1]
mov dword [esp + 4], eax
mov dword [edi + 0x268], eax
push 0x526214
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420d60
push 0x526219
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420d60
push str.VPrev
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420d60
push 0x526224
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420d60
push 0x52622a
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420d60
push 0x526235
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x420de2
nop dword [eax]
test ebx, ebx
jle 0x420de2
cmp ebx, esi
jge 0x420de2
mov eax, dword [esp + 0x14]
mov ecx, eax
mov ebp, dword [esp + 0x18]
sub ecx, ebp
not ebp
add ebp, eax
mov eax, ebx
and ecx, 3
je 0x420d9e
mov eax, ebx
nop word cs:[eax + eax]
mov edx, dword [edi + 0x264]
add dword [edx + eax*4], 2
inc eax
dec ecx
jne 0x420d90
cmp ebp, 3
jb 0x420de2
nop word cs:[eax + eax]
mov ecx, dword [edi + 0x264]
add dword [ecx + eax*4], 2
mov ecx, dword [edi + 0x264]
add dword [ecx + eax*4 + 4], 2
mov ecx, dword [edi + 0x264]
add dword [ecx + eax*4 + 8], 2
mov ecx, dword [edi + 0x264]
add dword [ecx + eax*4 + 0xc], 2
add eax, 4
cmp esi, eax
jne 0x420db0
mov ebp, esi
mov eax, dword [esp + 0x1c]
lea esi, [esp + 0x20]
test eax, eax
je 0x420a80
nop word cs:[eax + eax]
push eax
push dword [esp + 0xc]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x420e20
mov eax, dword [esi]
add esi, 4
test eax, eax
jne 0x420e00
jmp 0x420a80
cmp ebx, dword [edi + 0x268]
jge 0x420a80
mov eax, dword [esp]
cmp dword [eax + ebx*4], 0
jne 0x420e5b
push 2
push dword [esp + 0x10]
call fcn.0042d110
add esp, 8
test eax, eax
jne 0x420e5b
jmp 0x420a80
mov eax, dword [edi + 0x264]
add dword [eax + ebx*4], 2
inc ebx
cmp ebx, ebp
jl 0x420e50
jmp 0x420a80
mov dword [edi + 0x26c], 0
push dword [esp]
call fcn.00424f10
add esp, 4
jmp 0x420e81
mov eax, dword [edi + 0x44]
mov dword [edi + 0x4c], eax
push esi
call fcn.00430240
add esp, 0x28
jmp 0x420a50
push 2
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
add esp, 4
push eax
push 1
push 0x15
push str.Error:_out_of_memory_n
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
add esp, 0x10
push 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
nop word cs:[eax + eax]