Function at 0x420ea4
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28
mov dword [ebp - 0x10], 0xd84d8ba6
mov ebx, dword [ebp - 0x34]
xor edi, edi
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x10]
cmp eax, 0xfceca296
jg 0x420f05
cmp eax, 0xbe5659ca
jg 0x420f73
cmp eax, 0x99b67fbb
jle 0x42100f
cmp eax, 0xb4122f9f
jg 0x4210f3
cmp eax, 0x99b67fbc
je 0x421190
cmp eax, 0x9e8b0307
jne 0x420ebf
mov dword [ebp - 0x10], 0x5ac41d5c
jmp 0x420ebf
cmp eax, 0x2a72de9b
jle 0x420fc4
cmp eax, 0x5ac41d5b
jle 0x421045
cmp eax, 0x76530f7a
jg 0x421125
cmp eax, 0x5ac41d5c
je 0x42119c
cmp eax, 0x5d07fa1d
jne 0x420ebf
add ebx, 0xffffffe4
push ebx
push 0x54ed
push 0x419c
push 0x275c
push 0x40e
call fcn.0041a0a4
add esp, 0x14
mov eax, 0x3e942282
cmp ebx, 0xe6
jge 0x4212f0
mov eax, 0xfceca297
jmp 0x4212f0
cmp eax, 0xcb21ae9b
jle 0x421082
cmp eax, 0xd84d8ba5
jle 0x421176
cmp eax, 0xd84d8ba6
je 0x4211b5
cmp eax, 0xee355f59
jne 0x420ebf
mov cl, byte [ebp - 0x17]
cmp byte [ebp - 0x18], 0
mov eax, 0xcb21ae9c
jne 0x420fb2
mov eax, 0x7983cfac
test cl, cl
jne 0x4212f0
mov eax, 0x7983cfac
jmp 0x4212f0
cmp eax, 0x15aeb713
jg 0x4210bb
cmp eax, 0xfceca297
je 0x4211c7
cmp eax, 0x7e19442
je 0x4211d9
cmp eax, 0x10c0eff8
jne 0x420ebf
mov al, byte [ebp - 0x15]
and al, byte [ebp - 0x16]
and al, 1
mov byte [ebp - 0x17], al
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], 0x76530f7b
jmp 0x420ebf
cmp eax, 0x802ad5a3
je 0x4211f0
cmp eax, 0x82a9b641
je 0x421229
cmp eax, 0x8b644baf
jne 0x420ebf
mov eax, dword [ebp - 0x20]
mov dword [eax], 0
mov dword [ebp - 0x10], 0x82a9b641
jmp 0x420ebf
cmp eax, 0x2a72de9c
je 0x421251
cmp eax, 0x3c1bbca1
je 0x42126e
cmp eax, 0x3e942282
jne 0x420ebf
mov eax, dword [ebp - 0x28]
cmp eax, 0xffffffff
setne byte [ebp - 0x15]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], 0x3c1bbca1
jmp 0x420ebf
cmp eax, 0xbe5659cb
je 0x42127a
cmp eax, 0xca5ed588
je 0x4212a6
cmp eax, 0xcb0f2970
jne 0x420ebf
mov eax, dword [ebp - 0x14]
and eax, 0xfffffffc
shl eax, 0xc
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x802ad5a3
jmp 0x420ebf
cmp eax, 0x15aeb714
je 0x4212ba
cmp eax, 0x17b292b1
je 0x4212c6
cmp eax, 0x27e595f9
jne 0x420ebf
mov dword [ebp - 0x2c], edi
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [eax], edi
mov dword [ebp - 0x10], 0xcb0f2970
jmp 0x420ebf
cmp eax, 0xb4122fa0
je 0x4212f8
cmp eax, 0xbdef6eaf
jne 0x420ebf
movzx eax, word [ebp - 0x12]
imul eax, eax, 0xf1
shr eax, 0xa
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x7e19442
jmp 0x420ebf
cmp eax, 0x76530f7b
je 0x42130c
cmp eax, 0x7983cfac
jne 0x420ebf
imul eax, dword [ebp - 0x14], 0x73
add eax, 0xbb
imul ecx, eax, 0xac
imul eax, eax
imul edx, eax, 0x856d
dec edx
shr ecx, 2
add ecx, 0xec
mov dword [ebp - 0x14], ecx
mov ecx, 0xd84d8ba6
cmp eax, edx
je 0x42116e
mov ecx, 0x9e8b0307
mov dword [ebp - 0x10], ecx
jmp 0x420ebf
cmp eax, 0xcb21ae9c
jne 0x421318
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], 0x8b644baf
jmp 0x420ebf
mov dword [ebp - 0x10], 0x27e595f9
jmp 0x420ebf
cmp dword [ebp - 0x24], 0
mov eax, 0xce3864f7
je 0x4212f0
mov eax, 0xbdef6eaf
jmp 0x4212f0
push eax
mov eax, esp
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0xfceca297
jmp 0x420ebf
push eax
mov eax, esp
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x10], 0x2a72de9c
jmp 0x420ebf
push dword [ebp - 0x24]
call fcn.0045b0dc
add esp, 4
mov dword [ebp - 0x10], 0xce3864f7
jmp 0x420ebf
push dword [ebp - 0x1c]
lea eax, [ebp - 0x2c]
push eax
push dword [ebp + 8]
call fcn.0041f172
add esp, 0xc
push edi
push 0x80
push 2
push edi
push edi
push 0x40000000
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0xbe5659cb
jmp 0x420ebf
push 0
push dword [ebp - 0x20]
push dword [ebp - 0x30]
push dword [ebp - 0x24]
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_WriteFile]
push dword [ebp - 0x28]
call esi
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], 0x7e19442
jmp 0x420ebf
mov eax, dword [ebp - 0x14]
shl eax, 0xa
add eax, 0x17f95
shr eax, 5
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x99b67fbc
jmp 0x420ebf
mov dword [ebp - 0x10], 0xca5ed588
jmp 0x420ebf
mov eax, dword [ebp - 0x14]
lea ecx, [eax + 0xe8]
imul ecx, ecx
add eax, 0x79
imul edx, ecx, 0x15bd
shr eax, 0x12
dec edx
mov dword [ebp - 0x14], eax
mov eax, 0xfceca297
cmp ecx, edx
je 0x4212f0
mov eax, 0x15aeb714
jmp 0x4212f0
cmp dword [ebp - 0x24], 0
setne byte [ebp - 0x16]
mov dword [ebp - 0x10], 0x17b292b1
jmp 0x420ebf
mov dword [ebp - 0x10], 0x3e942282
jmp 0x420ebf
mov eax, dword [ebp - 0x14]
imul ecx, eax, 0xcd
imul ecx, ecx
imul eax, eax, 0x51ae
imul edx, ecx, 0x6281
dec edx
mov dword [ebp - 0x14], eax
mov eax, 0x3e942282
cmp edx, ecx
je 0x4212f0
mov eax, 0x10c0eff8
mov dword [ebp - 0x10], eax
jmp 0x420ebf
cmp dword [ebp - 0x30], 0
setg byte [ebp - 0x18]
mov dword [ebp - 0x10], 0xee355f59
jmp 0x420ebf
mov dword [ebp - 0x10], 0xb4122fa0
jmp 0x420ebf
cmp eax, 0xce3864f7
jne 0x420ebf
mov dword [ebp - 0x34], ebx
mov eax, dword [ebp - 0x1c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret