Function at 0x4535f0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
mov eax, 4
imul ecx, eax, 0x31b
mov edx, dword [ecx + 0x48f518]
sub edx, 1
mov dword [ebp - 0x10], edx
mov eax, 4
imul ecx, eax, 0x31b
mov edx, dword [ebp - 0x10]
mov dword [ecx + 0x48f518], edx
cmp dword [ebp - 0x10], 0x78c70d0d
jg 0x453698
mov eax, 2
imul ecx, eax, 0x4f7
mov dx, word [ecx + 0x48d720]
sub dx, 1
mov word [ebp - 2], dx
mov eax, 2
imul ecx, eax, 0x4f7
mov dx, word [ebp - 2]
mov word [ecx + 0x48d720], dx
mov eax, 2
imul ecx, eax, 0x446
movsx edx, word [ecx + 0x48d720]
movsx eax, word [ebp - 2]
add eax, edx
mov ecx, 2
imul edx, ecx, 0xd71
movsx ecx, word [edx + 0x48d720]
sub ecx, eax
mov edx, 2
imul eax, edx, 0xd71
mov word [eax + 0x48d720], cx
mov ecx, 4
imul edx, ecx, 0x29f
mov eax, 4
imul ecx, eax, 0xd76
mov eax, dword [ecx + 0x48f518]
sub eax, 0x4f8ddcdc
xor eax, 0xe5f3788
mov ecx, dword [edx + 0x48f518]
add ecx, eax
mov edx, 4
imul eax, edx, 0x29f
mov dword [eax + 0x48f518], ecx
mov ecx, 4
imul edx, ecx, 0xd76
mov eax, dword [edx + 0x48f518]
add eax, 1
mov ecx, 4
imul edx, ecx, 0xd76
mov dword [edx + 0x48f518], eax
cmp dword [0x493284], 0
jne 0x453825
mov eax, 4
imul ecx, eax, 0xc95
mov edx, 4
imul eax, edx, 0x956
mov edx, dword [eax + 0x48f518]
shl edx, 2
mov eax, dword [ecx + 0x48f518]
add eax, edx
mov ecx, 4
imul edx, ecx, 0xc95
mov dword [edx + 0x48f518], eax
call fcn.0040aa30
mov dword [0x493284], eax
mov eax, 2
imul ecx, eax, 0xc87
mov dx, word [ecx + 0x48d720]
add dx, 1
mov word [ebp - 6], dx
mov eax, 2
imul ecx, eax, 0xc87
mov dx, word [ebp - 6]
mov word [ecx + 0x48d720], dx
mov eax, 2
imul ecx, eax, 0x636
mov dx, word [ecx + 0x48d720]
sub dx, 1
mov word [ebp - 4], dx
mov eax, 2
imul ecx, eax, 0x636
mov dx, word [ebp - 4]
mov word [ecx + 0x48d720], dx
movsx eax, word [ebp - 4]
movsx ecx, word [ebp - 6]
or ecx, 0x7b1dffcc
cmp ecx, eax
jne 0x453825
mov edx, 4
imul eax, edx, 0x82a
mov ecx, 4
imul edx, ecx, 0x65e
mov ecx, dword [edx + 0x48f518]
sub ecx, 0x1a6e012a
mov edx, 4
imul edx, edx, 0x2d
sub ecx, dword [edx + 0x48f518]
mov eax, dword [eax + 0x48f518]
add eax, ecx
mov ecx, 4
imul edx, ecx, 0x82a
mov dword [edx + 0x48f518], eax
mov eax, 4
imul ecx, eax, 0x2d
mov edx, dword [ecx + 0x48f518]
sub edx, 1
mov eax, 4
imul ecx, eax, 0x2d
mov dword [ecx + 0x48f518], edx
mov edx, 4
imul eax, edx, 0x391
mov ecx, 4
imul edx, ecx, 0x187
mov ecx, dword [edx + 0x48f518]
not ecx
and ecx, 0xb0cff075
and ecx, 0x7405a244
mov edx, dword [eax + 0x48f518]
xor edx, ecx
mov eax, 4
imul ecx, eax, 0x391
mov dword [ecx + 0x48f518], edx
push 3
push 0x1e26
call fcn.00458010
add esp, 8
mov dword [ebp - 0x14], eax
mov edx, 4
imul eax, edx, 0xe11
mov ecx, 4
imul edx, ecx, 0x304
mov ecx, dword [edx + 0x48f518]
and ecx, 0x44a9b3f8
or ecx, 0xb0fb8af6
mov edx, dword [eax + 0x48f518]
imul edx, ecx
mov eax, 4
imul ecx, eax, 0xe11
mov dword [ecx + 0x48f518], edx
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00464431
add esp, 8
mov dword [ebp - 0xc], eax
mov ecx, 4
imul edx, ecx, 0xb52
mov eax, dword [edx + 0x48f518]
xor eax, 0xeebdb35e
mov ecx, 4
imul edx, ecx, 0xb52
mov dword [edx + 0x48f518], eax
mov eax, dword [ebp - 0x14]
push eax
push 3
call fcn.0043d890
add esp, 8
mov ecx, 2
imul edx, ecx, 0x9ed
mov eax, 2
imul ecx, eax, 0xeb
movsx eax, word [ecx + 0x48d720]
movsx ecx, word [edx + 0x48d720]
add ecx, eax
mov edx, 2
imul eax, edx, 0x9ed
mov word [eax + 0x48d720], cx
cmp dword [ebp - 0xc], 0
jne 0x453b65
mov ecx, 4
imul edx, ecx, 0x815
mov eax, 4
imul ecx, eax, 0x867
mov eax, dword [ecx + 0x48f518]
or eax, 0xea467595
mov ecx, dword [edx + 0x48f518]
xor ecx, eax
mov edx, 4
imul eax, edx, 0x815
mov dword [eax + 0x48f518], ecx
push 0x3e8
call dword [0x48d694]
mov ecx, 4
imul edx, ecx, 0xd5f
mov eax, 4
imul ecx, eax, 0x98c
mov eax, dword [ecx + 0x48f518]
add eax, 0x6c81fe6
or eax, 0xcc1931cf
mov ecx, dword [edx + 0x48f518]
sub ecx, eax
mov edx, 4
imul eax, edx, 0xd5f
mov dword [eax + 0x48f518], ecx
mov ecx, 4
imul edx, ecx, 0x98c
mov eax, dword [edx + 0x48f518]
sub eax, 1
mov ecx, 4
imul edx, ecx, 0x98c
mov dword [edx + 0x48f518], eax
push 3
push 0x1e26
call fcn.00458010
add esp, 8
mov dword [ebp - 0x18], eax
mov eax, 2
imul ecx, eax, 0x6c1
movsx edx, word [ecx + 0x48d720]
xor edx, 0xe7de8596
xor edx, 0xf32a73af
mov dword [ebp - 0x1c], edx
mov eax, 2
imul ecx, eax, 0x6c1
mov dx, word [ecx + 0x48d720]
sub dx, 1
mov eax, 2
imul ecx, eax, 0x6c1
mov word [ecx + 0x48d720], dx
cmp dword [ebp - 0x1c], 0xe4f4ef2b
jle 0x453ac5
mov edx, 2
imul eax, edx, 0x843
movsx ecx, word [eax + 0x48d720]
imul edx, ecx, 0xe8baf19c
mov eax, 4
imul ecx, eax, 0x331
xor edx, dword [ecx + 0x48f518]
cmp edx, 0x2121d1d4
je 0x453ac5
mov edx, 4
imul eax, edx, 0x90c
mov ecx, 4
imul edx, ecx, 0x4d9
mov ecx, dword [edx + 0x48f518]
xor ecx, 0x6dbad2a6
or ecx, 0x2d04cd83
mov edx, dword [eax + 0x48f518]
xor edx, ecx
mov eax, 4
imul ecx, eax, 0x90c
mov dword [ecx + 0x48f518], edx
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00464431
add esp, 8
mov dword [ebp - 0xc], eax
mov ecx, 4
imul edx, ecx, 0x6a
mov eax, dword [edx + 0x48f518]
or eax, 0xf77ed6f5
mov ecx, 4
imul edx, ecx, 0x6a
mov dword [edx + 0x48f518], eax
mov eax, dword [ebp - 0x18]
push eax
push 3
call fcn.0043d890
add esp, 8
mov ecx, 2
imul edx, ecx, 0x656
mov ax, word [edx + 0x48d720]
sub ax, 1
mov word [ebp - 8], ax
mov ecx, 2
imul edx, ecx, 0x656
mov ax, word [ebp - 8]
mov word [edx + 0x48d720], ax
movsx ecx, word [ebp - 8]
add ecx, 0x5bd02705
mov edx, 4
imul eax, edx, 0x7af
mov edx, dword [eax + 0x48f518]
and edx, ecx
mov eax, 4
imul ecx, eax, 0x7af
mov dword [ecx + 0x48f518], edx
mov edx, 4
imul eax, edx, 0x97c
mov ecx, dword [eax + 0x48f518]
or ecx, 0xf034de94
mov dword [ebp - 0x20], ecx
mov edx, 2
imul eax, edx, 0x54c
movsx ecx, word [eax + 0x48d720]
imul edx, ecx, 0xd7e480ef
mov eax, 4
imul ecx, eax, 0x960
mov eax, dword [ecx + 0x48f518]
xor eax, edx
mov dword [ebp - 0x24], eax
mov ecx, 4
imul edx, ecx, 0x960
mov eax, dword [edx + 0x48f518]
sub eax, 1
mov ecx, 4
imul edx, ecx, 0x960
mov dword [edx + 0x48f518], eax
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x24]
jg 0x453c01
mov ecx, 4
imul edx, ecx, 0xc15
mov eax, dword [edx + 0x48f518]
add eax, 0x6c45af03
mov ecx, 4
imul edx, ecx, 0xc15
mov dword [edx + 0x48f518], eax
cmp dword [ebp - 0xc], 0
je 0x453cbf
mov eax, 4
imul ecx, eax, 0x472
mov edx, dword [ecx + 0x48f518]
or edx, 0x5b4a985d
mov eax, 4
imul ecx, eax, 0x472
mov dword [ecx + 0x48f518], edx
mov edx, dword [ebp - 0xc]
push edx
push 1
push 4
push 0x493284
call fcn.004645e4
add esp, 0x10
mov eax, 2
imul ecx, eax, 0x8b5
mov edx, 2
imul eax, edx, 0xe6e
movsx edx, word [eax + 0x48d720]
and edx, 0x737ef4ee
xor edx, 0x4f6cc039
movsx eax, word [ecx + 0x48d720]
and eax, edx
mov ecx, 2
imul edx, ecx, 0x8b5
mov word [edx + 0x48d720], ax
mov eax, dword [ebp - 0xc]
push eax
call fcn.00464106
add esp, 4
mov ecx, 4
imul edx, ecx, 0x52f
mov eax, dword [edx + 0x48f518]
sub eax, 0x6123fad1
mov ecx, 4
imul edx, ecx, 0x52f
mov dword [edx + 0x48f518], eax
mov eax, 4
imul ecx, eax, 0x91c
mov edx, dword [ecx + 0x48f518]
xor edx, 0xfb9fb704
mov eax, 4
imul ecx, eax, 0x91c
mov dword [ecx + 0x48f518], edx
mov esp, ebp
pop ebp
ret