Function at 0x433490
Capabilities:
Write file on windows

Disassembly:
push edi
push esi
sub esp, 0x72c
mov eax, dword [esp + 0x738]
mov dword [esp + 0x728], eax
mov cx, word [0x4ab5a2]
mov ax, cx
add eax, 0xc0a92774
mov cx, ax
mov word [0x4ab5a2], cx
mov eax, dword [esp + 0x728]
mov ecx, eax
call fcn.00407400
cmp eax, 0x8037
jbe 0x433c86
mov eax, 0xfe5335fe
mov ecx, dword [0x49e0d8]
xor ecx, 0xffffffff
cmp eax, ecx
jne 0x43350b
mov ax, word [0x4ac402]
movsx ecx, ax
and ecx, 0x426a30d
mov edx, dword [0x4a12cc]
xor edx, ecx
mov dword [0x4a12cc], edx
mov eax, dword [0x49a66c]
mov ecx, dword [0x4a2674]
mov edx, ecx
dec edx
mov dword [0x4a2674], edx
add ecx, 0x37da9b55
cmp eax, ecx
jge 0x43357d
mov eax, 0x4c2fc941
mov ecx, dword [0x4a2a2c]
inc ecx
mov dword [0x4a2a2c], ecx
cmp eax, ecx
je 0x433569
mov eax, dword [0x49ab00]
imul eax, eax, 0xdbbadc4b
mov ecx, dword [0x495d5c]
and eax, ecx
and eax, 0x3b5c1365
mov dword [0x495d5c], eax
jmp 0x433578
mov eax, dword [0x4a0e70]
add eax, 0xf0d3a549
mov dword [0x4a0e70], eax
jmp 0x43357d
mov eax, 0x64c07b21
mov ecx, dword [0x49bfcc]
mov dword [0x496a20], ecx
mov dx, word [0x4ab1d2]
mov cx, dx
xor ecx, 0xa6fb
mov dx, cx
mov word [0x4ab1d2], dx
mov ecx, esp
lea esi, [esp + 0x5c9]
mov dword [ecx], esi
mov dword [esp + 0x4c], eax
call fcn.00442180
mov dword [esp + 0x5c4], eax
mov eax, dword [0x4a0508]
add eax, 0x91182232
mov dword [0x4a0508], eax
call fcn.0044f750
movzx ecx, al
and ecx, 3
add ecx, 7
mov esi, dword [esp + 0x5c4]
lea esi, [esp + esi + 0x5c9]
mov edi, esp
mov dword [edi + 4], ecx
mov dword [edi], esi
call fcn.0044fc20
mov ecx, dword [0x4a03d0]
inc ecx
mov dword [0x4a03d0], ecx
mov esi, dword [0x492818]
mov edi, esi
dec edi
mov dword [0x492818], edi
and ecx, esi
mov esi, dword [esp + 0x4c]
cmp esi, ecx
jne 0x433641
mov ax, word [0x4a52dc]
mov cx, ax
xor ecx, 0xb2c0
mov ax, cx
mov word [0x4a52dc], ax
jmp 0x433650
mov eax, dword [0x492c7c]
xor eax, 0x7f75f2f5
mov dword [0x492c7c], eax
mov eax, 0xfeffdaaf
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x3147
mov dword [esp + 0x48], eax
call fcn.004322b0
mov dword [esp + 0x724], eax
mov dword [0x497fe0], 0xd2fdcebe
mov eax, dword [esp + 0x724]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x5c9]
mov dword [ecx], eax
call fcn.00456650
mov ecx, dword [0x4a1c74]
imul ecx, ecx, 0xc77f43c0
mov dword [0x4a1c74], ecx
mov ecx, esp
mov dword [ecx + 4], 3
mov dword [ecx], 0x7f0
mov dword [esp + 0x44], eax
call fcn.004322b0
mov dword [esp + 0x720], eax
mov dx, word [0x4a7960]
mov ax, dx
inc eax
mov dx, ax
mov word [0x4a7960], dx
movsx eax, dx
mov ecx, dword [esp + 0x48]
cmp ecx, eax
jge 0x433720
mov ax, word [0x4a6e56]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x4a6e56], dx
movsx ecx, ax
mov esi, 0xa3769c4f
sub esi, ecx
xor esi, 0xe6c2a531
mov ecx, dword [0x49489c]
imul ecx, esi
mov dword [0x49489c], ecx
mov eax, dword [esp + 0x724]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.00422f30
mov eax, dword [0x494cb4]
mov ecx, eax
dec ecx
mov dword [0x494cb4], ecx
mov dx, word [0x4ac330]
movsx ecx, dx
not ecx
imul ecx, ecx, 0x991f5b00
xor eax, ecx
mov ecx, dword [0x4a27dc]
xor ecx, eax
mov dword [0x4a27dc], ecx
mov eax, dword [esp + 0x720]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x5c9]
mov dword [ecx], eax
call fcn.004567fc
mov dword [esp + 0x718], eax
mov eax, dword [0x493984]
add eax, 0x10d4fb86
mov dword [0x493984], eax
mov eax, dword [esp + 0x720]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 3
call fcn.00422f30
mov eax, dword [0x4a04ec]
and eax, 0xfbe0e92c
mov dword [0x4a04ec], eax
cmp dword [esp + 0x718], 0
je 0x433bfb
mov eax, 0x26ad4dfc
mov dword [0x492c64], 0xecebb64c
mov ecx, dword [0x49c71c]
xor ecx, 0xe32bd28c
mov dword [0x49c71c], ecx
mov ecx, dword [esp + 0x718]
mov edx, dword [esp + 0x728]
mov dword [esp + 0x40], ecx
mov ecx, edx
mov dword [esp + 0x3c], eax
call fcn.00407400
mov ecx, dword [esp + 0x728]
mov dword [esp + 0x38], eax
call fcn.00407a00
mov ecx, esp
mov edx, dword [esp + 0x40]
mov dword [ecx + 0xc], edx
mov edx, dword [esp + 0x38]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov dword [ecx + 8], 1
call fcn.004569af
mov dword [0x4a2b10], 0x2684bd9f
mov ecx, dword [esp + 0x718]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x34], eax
call fcn.00456a9d
mov ecx, dword [0x4974d8]
xor ecx, 0xffffffff
and ecx, 0xaa1f7b08
mov edx, dword [esp + 0x3c]
cmp edx, ecx
mov dword [esp + 0x30], eax
jne 0x433883
mov dword [0x49a76c], 0xc7a652a0
jmp 0x4338ab
mov ax, word [0x4a99a0]
mov cx, ax
mov ax, word [0x4a4aa2]
mov dx, ax
or ecx, edx
mov ax, word [0x4aa638]
mov dx, ax
add edx, ecx
mov ax, dx
mov word [0x4aa638], ax
mov ecx, dword [esp + 0x728]
call fcn.0040aa60
mov ax, word [0x4a3ac0]
mov cx, ax
add ecx, 0x9d3798a6
mov ax, word [0x4a5918]
mov dx, ax
and ecx, edx
and ecx, 0x78e6
mov ax, cx
mov word [0x4a5918], ax
mov byte [esp + 0x18b], 0
mov dword [0x496b44], 0x58bd9912
mov ecx, dword [0x491ca8]
mov edx, esp
lea esi, [esp + 0x50]
mov dword [edx + 4], esi
mov dword [edx + 8], 0x13b
mov dword [edx], 0
mov dword [esp + 0x2c], esi
call ecx
sub esp, 0xc
mov di, word [0x4a7db0]
mov cx, di
or ecx, 0xa12
mov di, cx
mov word [0x4a7db0], di
mov byte [esp + 0x5c3], 0
mov ecx, dword [0x49e124]
dec ecx
mov dword [0x49e124], ecx
xor ecx, 0x31c11005
mov edx, dword [0x49986c]
or edx, ecx
mov dword [0x49986c], edx
mov ecx, esp
mov dword [ecx + 4], 0x15
mov dword [ecx], 0x4619
mov dword [esp + 0x28], eax
call fcn.004322b0
mov dword [esp + 0x71c], eax
mov di, word [0x4ac012]
mov ax, di
mov ecx, eax
dec ecx
mov di, cx
mov word [0x4ac012], di
and eax, 0x6d7f
mov di, word [0x4a7258]
mov cx, di
imul ecx, eax
mov di, cx
mov word [0x4a7258], di
mov eax, dword [0x4ad094]
mov ecx, dword [0x4ad07c]
mov edx, dword [esp + 0x71c]
mov esi, esp
mov dword [esi + 0x10], eax
mov dword [esi + 0xc], ecx
mov eax, dword [esp + 0x2c]
mov dword [esi + 8], eax
mov dword [esi + 4], edx
lea ecx, [esp + 0x18c]
mov dword [esi], ecx
call fcn.00456c17
mov ecx, dword [0x498bb8]
mov edx, dword [0x4a2db0]
imul ecx, edx
imul ecx, ecx, 0xa1283afb
mov dword [0x4a2db0], ecx
mov ecx, dword [esp + 0x71c]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x15
mov dword [esp + 0x24], eax
call fcn.00422f30
mov eax, dword [0x49f938]
dec eax
mov dword [0x49f938], eax
mov ecx, dword [0x49b608]
xor ecx, 0xffffffff
sub eax, ecx
or eax, 0x473bdcf4
cmp eax, 0x5d40d34b
jle 0x433a4e
mov eax, dword [0x4a0120]
add eax, 0xd6066d75
mov dword [0x4a0120], eax
jmp 0x433a8f
mov eax, 0xffdadfff
mov ecx, dword [0x49570c]
dec ecx
mov dword [0x49570c], ecx
cmp eax, ecx
jl 0x433a8a
mov eax, dword [0x493ac8]
not eax
and eax, 0x6c3b
mov cx, word [0x4a5c72]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x4a5c72], cx
jmp 0x433a8f
mov eax, 0x3e706a65
mov ecx, dword [0x4ad094]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x20], eax
call fcn.00414140
mov ecx, dword [0x49b64c]
mov si, word [0x4a45a2]
mov dx, si
mov edi, edx
inc edi
mov si, di
mov word [0x4a45a2], si
imul ecx, edx
add ecx, 0x5d5a53bd
mov si, word [0x4a791c]
mov dx, si
sub edx, ecx
mov si, dx
mov word [0x4a791c], si
mov ecx, esp
lea edx, [esp + 0x18c]
mov dword [ecx + 4], edx
lea edi, [esp + 0x5c9]
mov dword [ecx], edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
call fcn.0041c5a0
mov eax, dword [0x49938c]
add eax, 0xef7faf67
mov dword [0x49938c], eax
mov eax, esp
mov ecx, dword [esp + 0x18]
mov dword [eax], ecx
mov dword [eax + 4], 0x438
call fcn.00447960
mov eax, dword [0x499108]
mov ecx, eax
inc ecx
mov dword [0x499108], ecx
add eax, 0xc0fc869f
xor eax, 0x8da9794b
mov ecx, dword [esp + 0x20]
cmp ecx, eax
jge 0x433b6e
mov ax, word [0x4a695a]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x4a695a], ax
xor ecx, 0x2a27
mov ax, cx
mov word [0x4a69b2], ax
mov eax, esp
lea ecx, [esp + 0x50]
mov dword [eax], ecx
mov dword [eax + 4], 0x13c
call fcn.00447960
mov dword [0x4a0360], 0x83290901
mov eax, dword [0x491d04]
mov ecx, esp
mov dword [ecx], 0x16168
call eax
sub esp, 4
mov eax, dword [0x49dde0]
mov ecx, eax
dec ecx
mov dword [0x49dde0], ecx
imul eax, eax, 0x8ec08e0c
mov dx, word [0x4a3f9e]
mov cx, dx
xor ecx, eax
mov dx, cx
mov word [0x4a3f9e], dx
mov eax, dword [0x491c54]
mov ecx, esp
lea esi, [esp + 0x5c9]
mov dword [ecx], esi
call eax
sub esp, 4
mov dx, word [0x4ab35a]
mov cx, dx
and ecx, 0x8a65
mov dx, cx
mov word [0x4ab35a], dx
mov dword [esp + 0x14], eax
mov eax, dword [0x49e0d4]
add eax, 0x81bcc375
mov dword [0x49e0d4], eax
mov eax, esp
lea ecx, [esp + 0x5c9]
mov dword [eax], ecx
mov dword [eax + 4], 0x14f
call fcn.00447960
mov dx, word [0x4a7196]
movsx eax, dx
sar eax, 8
add eax, 0x92d2bf4b
mov ecx, dword [0x499ed0]
mov esi, ecx
dec esi
mov dword [0x499ed0], esi
imul ecx, ecx, 0x1116f5d5
or ecx, 0x800988b3
cmp eax, ecx
jge 0x433c6a
mov eax, dword [0x495684]
add eax, 0x6d51c58d
mov dword [0x495684], eax
jmp 0x433c81
mov eax, dword [0x49858c]
mov ecx, dword [0x49dbe0]
or eax, ecx
or eax, 0xf9a788de
mov dword [0x49dbe0], eax
jmp 0x433c86
mov eax, 0xf97852d5
mov ecx, dword [0x492288]
cmp eax, ecx
jne 0x433cbb
mov ax, word [0x4a9d5c]
movsx ecx, ax
imul ecx, ecx, 0x1f59ebf1
mov edx, dword [0x49b274]
add edx, ecx
mov dword [0x49b274], edx
jmp 0x433d18
mov eax, 0x33986ac8
mov cx, word [0x4a56d2]
mov dx, cx
dec edx
mov cx, dx
mov word [0x4a56d2], cx
movsx edx, cx
add edx, 0xd23ffd63
cmp eax, edx
jle 0x433d13
mov eax, 0xfe5fed7e
mov cx, word [0x4a6b86]
movsx edx, cx
and edx, 0x926850bb
and edx, 0x523c93a6
cmp eax, edx
je 0x433d0e
jmp 0x433d0e
jmp 0x433d13
jmp 0x433d18
add esp, 0x72c
pop esi
pop edi
ret