Function at 0x4270b0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x48
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov dword [esp + 0xc], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x40], eax
mov eax, 0xe5e682f9
jmp 0x4270f0
mov eax, 0xd48f8745
nop word cs:[eax + eax]
cmp eax, 0x89bcbac
jg 0x427140
cmp eax, 0xb39cd1ad
jle 0x427180
cmp eax, 0xc5504120
jle 0x427218
cmp eax, 0xc5504121
je 0x427500
cmp eax, 0xd48f8745
je 0x427521
cmp eax, 0xe5e682f9
jne 0x4270f0
cmp dword [esp + 0x40], 0
mov eax, 0xc5504121
mov ecx, 0xb0ce080d
cmove eax, ecx
jmp 0x4270f0
cmp eax, 0x2aa881e2
jle 0x4271e0
cmp eax, 0x46a2ec97
jle 0x427248
cmp eax, 0x53ae5e12
je 0x427579
cmp eax, 0x5c6f5a5c
jne 0x4276a3
mov eax, 0x2caac8a9
jmp 0x4270f0
cmp eax, 0xa12b07e1
jg 0x4272b1
cmp eax, 0x860bcefd
je 0x4270df
cmp eax, 0x9e98195f
jne 0x4270f0
mov eax, dword [0x5cd46c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x5c6f5a5c
mov esi, 0x2caac8a9
cmove eax, esi
cmp dword [0x5cd470], 0xa
mov edx, 0x5c6f5a5c
jmp 0x4275d3
cmp eax, 0x16b135db
jg 0x4273ee
cmp eax, 0x89bcbad
je 0x427594
cmp eax, 0x1480d4de
jne 0x4270f0
cmp byte [esp + 0xb], 0
mov eax, 0xa12b07e2
mov ecx, 0x53ae5e12
cmovne eax, ecx
jmp 0x4270f0
cmp eax, 0xb39cd1ae
je 0x4275a5
cmp eax, 0xc0eac8d5
jne 0x4270f0
mov eax, dword [esp + 4]
cmp dword [eax + 0x4c], 0
mov eax, 0x16b135dc
mov ecx, 0x2aa881e3
cmove eax, ecx
jmp 0x4270f0
cmp eax, 0x2aa881e3
je 0x4275e3
cmp eax, 0x2caac8a9
jne 0x4270f0
mov eax, dword [0x5cd46c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x5c6f5a5c
mov edx, 0x46a2ec98
cmove eax, edx
cmp dword [0x5cd470], 0xa
setl dl
mov esi, 0x5c6f5a5c
cmovge eax, esi
xor dl, cl
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2c], ecx
mov ecx, 0x46a2ec98
cmovne eax, ecx
jmp 0x4270f0
cmp eax, 0xa12b07e2
je 0x427601
cmp eax, 0xb0ce080d
jne 0x4270f0
mov eax, dword [esp + 4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x18], eax
mov eax, dword [0x5cd984]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
cmp dword [0x5cd988], 0xa
setge cl
mov edx, ecx
xor dl, al
or cl, al
xor cl, 1
or cl, dl
mov eax, 0x30e4a585
mov ecx, 0x25ba04fe
cmovne eax, ecx
mov ecx, 0x30e4a585
mov edx, 0x676f621d
cmovne ecx, edx
mov edx, 0xe97e1a86
nop word cs:[eax + eax]
cmp edx, 0x26f0e081
jle 0x427360
cmp edx, 0x676f621c
jle 0x427390
cmp edx, 0x676f621d
je 0x4273ab
cmp edx, 0x714bdcb4
jne 0x427330
jmp 0x42761e
cmp edx, 0xe97e1a86
je 0x4273bf
cmp edx, 0xe98c7ca
je 0x4273d6
cmp edx, 0x25ba04fe
jne 0x427330
mov edx, 0x714bdcb4
mov esi, dword [esp + 0x1c]
mov dword [esp], esi
jmp 0x427330
cmp edx, 0x26f0e082
je 0x4273e7
cmp edx, 0x30e4a585
jne 0x427330
mov edx, dword [esp + 0x10]
mov edx, 0x676f621d
jmp 0x427330
mov edx, dword [esp + 0x10]
mov edx, dword [edx + 0x30]
mov edx, dword [edx]
mov dword [esp + 0x1c], edx
mov edx, eax
jmp 0x427330
cmp dword [esp + 0x18], 0
mov edx, 0x26f0e082
mov esi, 0xe98c7ca
cmove edx, esi
jmp 0x427330
mov dword [esp], 0
mov edx, 0x714bdcb4
jmp 0x427330
mov edx, ecx
jmp 0x427330
cmp eax, 0x16b135dc
je 0x42764d
cmp eax, 0x28738549
jne 0x4270f0
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x20]
mov ebx, dword [eax]
mov eax, dword [0x5cd87c]
mov ecx, dword [0x5cd880]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esp + 0x10]
cmp ecx, 0xa
setl byte [esp + 0x18]
mov eax, 0x12aa6555
nop dword [eax]
cmp eax, 0x5197e20e
jg 0x427460
cmp eax, 0x12aa6555
je 0x4274ba
cmp eax, 0x37ca0131
jne 0x427440
jmp 0x427672
cmp eax, 0x5197e20f
je 0x4274e6
cmp eax, 0x7c2dc188
jne 0x427440
push dword [esp]
push dword [esp + 0x10]
push ebx
call fcn.00599390
add esp, 0xc
mov eax, dword [0x5cd87c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x5197e20f
mov esi, 0x37ca0131
cmove eax, esi
cmp dword [0x5cd880], 0xa
mov edx, 0x5197e20f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, esi
jmp 0x427440
movzx ecx, byte [esp + 0x10]
movzx eax, byte [esp + 0x18]
mov edx, ecx
xor dl, al
mov edx, 0x5197e20f
mov esi, 0x7c2dc188
cmovne edx, esi
test al, al
mov eax, edx
cmovne eax, esi
test cl, cl
cmove eax, edx
jmp 0x427440
push dword [esp]
push dword [esp + 0x10]
push ebx
call fcn.00599390
add esp, 0xc
mov eax, 0x7c2dc188
jmp 0x427440
mov ecx, dword [esp + 4]
push ebx
push edi
push dword [esp + 0x14]
call fcn.0042a120
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], edx
mov eax, 0x9e98195f
jmp 0x4270f0
mov edx, dword [0x5cd46c]
mov ecx, dword [0x5cd470]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x860bcefd
mov esi, 0x1480d4de
cmovne edx, esi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, esi
cmp ecx, 0xa
cmovge eax, edx
mov ecx, dword [esp]
neg ecx
mov ecx, 0
sbb ecx, dword [esp + 0x14]
setl byte [esp + 0xb]
jmp 0x4270f0
cmp edi, dword [esp]
mov eax, ebx
sbb eax, dword [esp + 0x14]
mov eax, 0x28738549
mov ecx, 0x89bcbad
cmovl eax, ecx
jmp 0x4270f0
mov eax, 0x28738549
mov dword [esp], edi
mov dword [esp + 0x14], ebx
jmp 0x4270f0
mov eax, dword [0x5cd46c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x860bcefd
mov esi, 0xd48f8745
cmove eax, esi
cmp dword [0x5cd470], 0xa
mov edx, 0x860bcefd
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, esi
jmp 0x4270f0
mov eax, dword [esp + 0x38]
sub eax, edi
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x34]
sbb eax, ebx
mov dword [esp + 0x20], eax
mov eax, 0x9e98195f
jmp 0x4270f0
mov eax, edi
neg eax
mov eax, 0
sbb eax, ebx
mov eax, 0x2aa881e3
mov ecx, 0xc0eac8d5
cmovl eax, ecx
jmp 0x4270f0
mov eax, dword [esp]
sar eax, 0x1f
mov dword [esp + 0x14], eax
mov eax, edi
neg eax
mov eax, 0
sbb eax, ebx
mov eax, 0xa12b07e2
mov ecx, 0xb39cd1ae
cmovl eax, ecx
mov dword [esp + 0x38], edi
mov dword [esp + 0x34], ebx
jmp 0x4270f0
mov eax, dword [esp + 4]
push dword [eax + 0x4c]
push edi
push 1
push dword [esp + 0x18]
call fcn.005a03f7
add esp, 0x10
sub edi, eax
sbb ebx, 0
mov eax, 0x2aa881e3
jmp 0x4270f0
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x1c]
mov edx, dword [esp]
add dword [esp + 0xc], edx
sub edi, edx
mov ebx, dword [esp + 0x3c]
sbb ebx, dword [esp + 0x14]
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x30]
sub dword [ecx], edx
mov eax, dword [eax + 0x20]
add dword [eax], edx
mov eax, 0xa12b07e2
jmp 0x4270f0
cmp eax, 0x46a2ec98
jne 0x4270f0
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc