Function at 0x4280d0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x30
mov eax, dword [0x5c0b00]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x5c22c4]
mov edx, dword [0x5c22c8]
lea esi, [eax + 1]
imul esi, eax
not esi
or esi, 0xfffffffe
cmp esi, 0xffffffff
sete byte [ebp - 0x25]
cmp edx, 0xa
setl byte [ebp - 0x26]
mov dword [ebp - 0x3c], ecx
mov ecx, 0xca775775
jmp 0x428150
mov eax, dword [0x5c22c4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x893a700a
mov esi, 0x7d74b8c0
cmove ecx, esi
cmp dword [0x5c22c8], 0xa
mov edx, 0x893a700a
cmovge ecx, edx
setl dl
xor dl, al
cmovne ecx, esi
nop dword [eax + eax]
cmp ecx, 0xe9e8bb5f
jg 0x4281d0
cmp ecx, 0xb3535549
jle 0x428260
cmp ecx, 0xc774315b
jle 0x428333
cmp ecx, 0xd25f0bcd
jg 0x428470
cmp ecx, 0xc774315c
je 0x428633
cmp ecx, 0xca775775
je 0x428658
cmp ecx, 0xcffd00fa
jne 0x428150
mov eax, dword [0x5c22c4]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0xc3c9fe56
mov esi, 0x81c956e9
cmove ecx, esi
cmp dword [0x5c22c8], 0xa
mov edx, 0xc3c9fe56
jmp 0x428140
cmp ecx, 0x304eabd1
jg 0x4282c0
cmp ecx, 0x9a66815
jle 0x428383
cmp ecx, 0x2d2f6339
jle 0x4284aa
cmp ecx, 0x2d2f633a
je 0x428682
cmp ecx, 0x2dc3ac38
je 0x428698
cmp ecx, 0x2fb76a6e
jne 0x428150
mov edx, dword [0x5c22c4]
mov eax, dword [0x5c22c8]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov edi, 0x9075817
mov esi, 0x304eabd2
cmovne edi, esi
test edx, ecx
mov ecx, edi
cmove ecx, esi
jmp 0x4288e5
cmp ecx, 0x9de50dd4
jg 0x4283d3
cmp ecx, 0x8e5707e1
jle 0x4284cc
cmp ecx, 0x8e5707e2
je 0x4286a2
cmp ecx, 0x9324460f
je 0x4286b3
cmp ecx, 0x9410b455
jne 0x428150
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
call eax
cmp eax, 0xffffffff
mov ecx, 0xb353554a
mov eax, 0xb3f1ecd0
cmove ecx, eax
jmp 0x428150
cmp ecx, 0x5dfa0873
jg 0x428436
cmp ecx, 0x47e144c5
jle 0x4284ee
cmp ecx, 0x47e144c6
je 0x428715
cmp ecx, 0x54888144
je 0x42872e
cmp ecx, 0x56c0d39b
jne 0x428150
mov eax, dword [ebp - 0x1c]
mov eax, dword [0x5c22c4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0xd25f0bce
mov esi, 0xf127714b
cmove ecx, esi
cmp dword [0x5c22c8], 0xa
mov edx, 0xd25f0bce
jmp 0x428140
cmp ecx, 0xb6157118
jle 0x42851c
cmp ecx, 0xb6157119
je 0x428747
cmp ecx, 0xbb509cb4
je 0x42875f
cmp ecx, 0xc3c9fe56
jne 0x428150
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x3d], 0
mov eax, dword [ebp - 0x20]
mov byte [eax], 1
mov eax, dword [ebp - 0x30]
mov dword [eax], 1
mov ecx, 0x81c956e9
jmp 0x428150
cmp ecx, 0xfc1dc495
jle 0x428544
cmp ecx, 0xfc1dc496
je 0x42876c
cmp ecx, 0x5df4849
je 0x428784
cmp ecx, 0x9075817
jne 0x428150
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x3d], 0
mov eax, dword [ebp - 0x20]
sete byte [eax]
mov eax, dword [ebp - 0x30]
mov dword [eax], 1
mov ecx, 0x304eabd2
jmp 0x428150
cmp ecx, 0xb00f3683
jle 0x4285b5
cmp ecx, 0xb00f3684
je 0x4287fe
cmp ecx, 0xb00fdcd1
je 0x428808
cmp ecx, 0xb28b551e
jne 0x428150
mov eax, dword [0x5c22c4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0xc774315c
mov esi, 0x9324460f
cmove ecx, esi
cmp dword [0x5c22c8], 0xa
mov edx, 0xc774315c
jmp 0x428140
cmp ecx, 0x6be77fc3
jle 0x428605
cmp ecx, 0x6be77fc4
je 0x428812
cmp ecx, 0x70835fc6
je 0x428822
cmp ecx, 0x7d74b8c0
jne 0x428150
mov ecx, 0x17752b9c
jmp 0x428150
cmp ecx, 0xd25f0bce
je 0x428850
cmp ecx, 0xd47331a6
je 0x42886a
cmp ecx, 0xde512f6d
jne 0x428150
cmp byte [ebp - 0x27], 0
mov ecx, 0x6be77fc4
mov eax, 0x47e144c6
cmovne ecx, eax
jmp 0x428150
cmp ecx, 0x9a66816
je 0x428880
cmp ecx, 0x28d1cae8
jne 0x428a0e
mov ecx, 0xbb509cb4
jmp 0x428150
cmp ecx, 0x81c956e9
je 0x428898
cmp ecx, 0x893a700a
jne 0x428150
mov ecx, 0x5dfa0874
jmp 0x428150
cmp ecx, 0x304eabd2
je 0x4288f0
cmp ecx, 0x3765fc4b
jne 0x428150
cmp dword [ebp - 0x34], 0
mov ecx, 0xe9e8bb60
mov eax, 0x8e5707e2
cmove ecx, eax
jmp 0x428150
cmp ecx, 0xb353554a
je 0x42893a
cmp ecx, 0xb3f1ecd0
jne 0x428150
mov eax, dword [ebp - 0x20]
mov byte [eax], 0
mov ecx, 0x17752b9c
jmp 0x428150
cmp ecx, 0xe9e8bb60
je 0x428981
cmp ecx, 0xf127714b
jne 0x428150
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
sub eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov edx, dword [0x5c22c4]
mov eax, dword [0x5c22c8]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov edi, 0xd25f0bce
mov esi, 0x2d2f633a
cmovne edi, esi
test edx, ecx
mov ecx, edi
cmove ecx, esi
cmp eax, 0xa
mov eax, dword [ebp - 0x1c]
cmovge ecx, edi
cmp dword [eax], 0
setne byte [ebp - 0x28]
jmp 0x428150
cmp ecx, 0x9de50dd5
je 0x42899a
cmp ecx, 0xacd71df5
jne 0x428150
mov eax, dword [ebp - 0x38]
mov dword [eax], 0x20
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp - 0x18]
add eax, 0x20
mov edx, dword [ebp - 0x14]
add edx, 0x40
mov edi, dword [ecx]
push dword [ebp - 0x24]
push eax
push dword [ebp - 0x18]
push edx
call dword [edi + 0x20]
mov ecx, 0x9de50dd5
jmp 0x428150
cmp ecx, 0x5dfa0874
je 0x428111
cmp ecx, 0x671d14bd
jne 0x428150
cmp dword [ebp - 0x34], 0
mov ecx, 0xb6157119
mov eax, 0x3765fc4b
cmovle ecx, eax
jmp 0x428150
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
push dword [eax + 0x4c]
push dword [ecx]
push 1
push dword [ebp - 0x18]
call fcn.00594c77
add esp, 0x10
mov ecx, 0x9324460f
jmp 0x428150
movzx eax, byte [ebp - 0x25]
movzx ecx, byte [ebp - 0x26]
mov edx, eax
xor dl, cl
mov edx, 0xb00fdcd1
mov esi, 0x5df4849
cmovne edx, esi
test cl, cl
mov ecx, edx
cmovne ecx, esi
test al, al
cmove ecx, edx
jmp 0x428150
cmp byte [ebp - 0x28], 0
mov ecx, 0x2fb76a6e
mov eax, 0xb28b551e
cmovne ecx, eax
jmp 0x428150
mov ecx, 0x671d14bd
jmp 0x428150
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x3d], 0
mov ecx, 0x56c0d39b
jmp 0x428150
mov eax, dword [ebp - 0x1c]
mov edi, dword [eax]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
push dword [eax + 0x4c]
push dword [ecx]
push 1
push dword [ebp - 0x18]
call fcn.00594c77
add esp, 0x10
cmp edi, eax
setne byte [ebp - 0x29]
mov eax, dword [0x5c22c4]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0xc774315c
mov edi, 0xd47331a6
cmove ecx, edi
cmp dword [0x5c22c8], 0xa
mov edx, 0xc774315c
cmovge ecx, edx
setl dl
xor dl, al
cmovne ecx, edi
jmp 0x428150
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x3d], 0
mov ecx, 0x9410b455
mov eax, 0x6be77fc4
cmove ecx, eax
jmp 0x428150
mov eax, dword [ebp - 0x20]
mov byte [eax], 0
mov eax, dword [ebp - 0x30]
mov dword [eax], 1
mov ecx, 0xbb509cb4
jmp 0x428150
mov eax, dword [ebp - 0x34]
cmp eax, 3
mov ecx, 0x9a66816
mov eax, 0xfc1dc496
cmovl ecx, eax
jmp 0x428150
mov eax, dword [ebp - 0x1c]
mov ecx, 0x70835fc6
jmp 0x428150
mov eax, dword [ebp - 0x34]
cmp eax, 1
mov ecx, 0xe9e8bb60
mov eax, 0x56c0d39b
cmove ecx, eax
jmp 0x428150
push eax
mov eax, esp
mov dword [ebp - 0x20], eax
push eax
mov eax, esp
mov dword [ebp - 0x38], eax
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x18], eax
push eax
mov eax, esp
mov dword [ebp - 0x24], eax
push eax
mov eax, esp
mov dword [ebp - 0x1c], eax
push eax
mov eax, esp
mov edi, dword [0x5c22c4]
mov edx, dword [0x5c22c8]
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xb00fdcd1
mov esi, 0xde512f6d
cmovne ebx, esi
test edi, ecx
mov ecx, ebx
cmove ecx, esi
cmp edx, 0xa
mov dword [ebp - 0x30], eax
cmovge ecx, ebx
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x38], 0
setne byte [ebp - 0x27]
jmp 0x428150
mov ecx, 0x70835fc6
jmp 0x428150
mov ecx, 0x5df4849
jmp 0x428150
mov eax, dword [ebp - 0x20]
mov byte [eax], 1
mov ecx, 0x17752b9c
jmp 0x428150
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x38]
mov eax, dword [0x5c22c4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x893a700a
mov esi, 0x5dfa0874
jmp 0x428131
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
sub eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1c]
mov ecx, 0xf127714b
jmp 0x428150
cmp byte [ebp - 0x29], 0
mov ecx, 0x2fb76a6e
mov eax, 0x54888144
cmovne ecx, eax
jmp 0x428150
mov eax, dword [ebp - 0x34]
cmp eax, 3
mov ecx, 0xe9e8bb60
mov eax, 0xcffd00fa
cmove ecx, eax
jmp 0x428150
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x3d], 0
mov eax, dword [ebp - 0x20]
mov byte [eax], 1
mov eax, dword [ebp - 0x30]
mov dword [eax], 1
mov edx, dword [0x5c22c4]
mov eax, dword [0x5c22c8]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov edi, 0xc3c9fe56
mov ebx, 0xb00f3684
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, edi
jmp 0x428150
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x3d], 0
mov eax, dword [ebp - 0x20]
sete byte [eax]
mov eax, dword [ebp - 0x30]
mov dword [eax], 1
mov eax, dword [0x5c22c4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x9075817
mov esi, 0x28d1cae8
cmove ecx, esi
cmp dword [0x5c22c8], 0xa
mov edx, 0x9075817
jmp 0x428140
mov edx, dword [0x5c22c4]
mov eax, dword [0x5c22c8]
lea ecx, [edx - 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xacd71df5
mov esi, 0x9de50dd5
cmovne edx, esi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, esi
cmp eax, 0xa
mov eax, dword [ebp - 0x38]
cmovge ecx, edx
jmp 0x428150
mov eax, dword [ebp - 0x20]
mov byte [eax], 0
mov eax, dword [ebp - 0x30]
mov dword [eax], 1
mov ecx, 0x70835fc6
jmp 0x428150
mov eax, dword [ebp - 0x38]
mov dword [eax], 0x20
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp - 0x18]
add eax, 0x20
mov edx, dword [ebp - 0x14]
add edx, 0x40
mov edi, dword [ecx]
push dword [ebp - 0x24]
push eax
push dword [ebp - 0x18]
push edx
call dword [edi + 0x20]
mov edi, dword [0x5c22c4]
mov edx, dword [0x5c22c8]
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xacd71df5
mov esi, 0x2dc3ac38
cmovne ebx, esi
test edi, ecx
mov ecx, ebx
cmove ecx, esi
cmp edx, 0xa
mov dword [ebp - 0x34], eax
cmovge ecx, ebx
jmp 0x428150
cmp ecx, 0x17752b9c
jne 0x428150
mov eax, dword [ebp - 0x20]
movzx ebx, byte [eax]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005892d5
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret