Function at 0x41bd70
Capabilities:
Write file on windows

Disassembly:
push edi
push esi
sub esp, 0x30
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], ecx
mov eax, dword [0x4903ac]
mov ecx, eax
inc ecx
mov dword [0x4903ac], ecx
or eax, 0x4d63a6ea
mov ecx, dword [0x48f198]
xor ecx, eax
mov dword [0x48f198], ecx
mov eax, dword [0x489d74]
mov ecx, dword [0x481cd8]
xor eax, ecx
mov dx, word [0x4a0f06]
mov cx, dx
sub ecx, eax
mov dx, cx
mov word [0x4a0f06], dx
cmp dword [0x4a7a18], 0
jne 0x41be36
mov ax, word [0x49bf80]
movsx ecx, ax
not ecx
imul ecx, ecx, 0x8dd023dd
and ecx, 0xbd1309dc
mov edx, dword [0x4964e0]
xor edx, ecx
mov dword [0x4964e0], edx
call fcn.00439720
mov dword [0x4a7a18], eax
mov eax, dword [0x4848d0]
xor eax, 0xffffffff
add eax, 0x40f1fc14
and eax, 0x188c23e
cmp eax, 0xd242fb20
jle 0x41be31
mov eax, dword [0x48c308]
and eax, 0x480a0083
mov dword [0x48a1b8], eax
jmp 0x41be36
mov eax, 0x6c2aea19
mov ecx, dword [0x4847f4]
add ecx, 0xf5aafd3f
mov dword [0x4847f4], ecx
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x41fa
mov dword [esp + 0x18], eax
call fcn.004211c0
mov dword [esp + 0x24], eax
mov eax, dword [0x485e94]
imul eax, eax, 0xdfffd7ff
mov dword [0x485e94], eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.004557c1
mov dword [esp + 0x1c], eax
mov eax, dword [0x486cd4]
mov ecx, dword [0x494a70]
shl ecx, 3
imul eax, ecx
mov ecx, dword [esp + 0x18]
cmp ecx, eax
je 0x41bec9
mov eax, dword [0x4925ac]
shl eax, 2
xor eax, 0x1e5f04f
mov ecx, dword [0x48a464]
and ecx, eax
mov dword [0x48a464], ecx
mov eax, dword [esp + 0x24]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.0040b750
mov eax, dword [0x489330]
mov ecx, eax
inc ecx
mov dword [0x489330], ecx
mov ecx, dword [0x489a48]
or ecx, eax
mov dword [0x489a48], ecx
cmp dword [esp + 0x1c], 0
jne 0x41c006
mov eax, dword [0x486678]
mov ecx, dword [0x4805ec]
dec ecx
mov dword [0x4805ec], ecx
imul ecx, ecx, 0xe4af62c9
or eax, ecx
mov ecx, dword [0x4860b8]
inc ecx
mov dword [0x4860b8], ecx
mov edx, dword [0x498e5c]
dec edx
mov dword [0x498e5c], edx
add ecx, edx
xor ecx, 0xdeb5c151
cmp eax, ecx
je 0x41bf57
mov eax, dword [0x483fa4]
or eax, 0xfdfdfdfb
mov dword [0x483fa4], eax
mov eax, dword [0x47f0c4]
mov ecx, esp
mov dword [ecx], 0x3e8
call eax
sub esp, 4
mov dx, word [0x4a47cc]
mov ax, dx
imul eax, eax, 0xf7f97ff7
mov dx, ax
mov word [0x4a47cc], dx
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x41fa
call fcn.004211c0
mov dword [esp + 0x20], eax
mov eax, dword [0x48db1c]
imul eax, eax, 0x26755cfd
mov ecx, dword [0x493ed8]
and ecx, eax
mov dword [0x493ed8], ecx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], ecx
call fcn.004557c1
mov dword [esp + 0x1c], eax
mov word [0x4a6352], 0x2020
mov eax, dword [esp + 0x20]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.0040b750
mov eax, dword [0x4931c8]
add eax, 0xcfa1c300
xor eax, 0x68369e35
mov ecx, dword [0x4977c0]
or ecx, eax
mov dword [0x4977c0], ecx
mov eax, dword [0x48ce1c]
inc eax
mov dword [0x48ce1c], eax
and eax, 0xbe2e6d99
xor eax, 0x50a28f15
cmp eax, 0x6bad3132
jle 0x41c043
mov ax, word [0x4a46c2]
mov cx, ax
and ecx, 0xb0b6
mov ax, cx
mov word [0x4a46c2], ax
jmp 0x41c086
mov ax, word [0x4a68c8]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4a68c8], dx
movsx ecx, ax
sub ecx, 0xd2fb8007
xor ecx, 0xab2d6e6f
cmp ecx, 0xfdbcd5e9
jle 0x41c081
mov eax, dword [0x488720]
add eax, 0xdeddc7ff
mov dword [0x488720], eax
jmp 0x41c086
cmp dword [esp + 0x1c], 0
je 0x41c12a
mov eax, dword [0x49859c]
imul eax, eax, 0x152462e2
mov dword [0x49859c], eax
mov eax, dword [esp + 0x1c]
mov ecx, esp
mov dword [ecx + 0xc], eax
mov dword [ecx + 8], 1
mov dword [ecx + 4], 4
mov dword [ecx], 0x4a7a18
call fcn.00455974
mov dx, word [0x4a6434]
mov cx, dx
imul ecx, ecx, 0x253ce1e9
mov dx, cx
mov word [0x4a6434], dx
mov ecx, dword [esp + 0x1c]
mov esi, esp
mov dword [esi], ecx
mov dword [esp + 0x14], eax
call fcn.00455a62
mov dx, word [0x49d096]
mov cx, dx
inc ecx
mov dx, cx
mov word [0x49d096], dx
movsx ecx, dx
mov esi, dword [0x489f10]
mov edi, esi
inc edi
mov dword [0x489f10], edi
imul ecx, esi
mov esi, dword [0x48bcf0]
or esi, ecx
mov dword [0x48bcf0], esi
mov dword [esp + 0x10], eax
mov eax, 0xf71ff9fb
mov cx, word [0x49b766]
movsx edx, cx
shl edx, 6
xor edx, 0x7d40cd45
cmp eax, edx
jl 0x41c15a
mov eax, dword [0x4836b0]
imul eax, eax, 0x20442101
mov dword [0x4836b0], eax
add esp, 0x30
pop esi
pop edi
ret