Function at 0x44e680
Capabilities:
Write file on windows

Disassembly:
cmp dword [0x4db888], 0
jne 0x44ec7f
mov edx, dword [esp + 0x20]
push 0x480
lea ecx, [esp + 0x350c]
push ecx
push 0
push edx
call fcn.00404e50
push 0xfffffffffffffffb
dec dword [ebx + 0x4db8840d]
add byte [ebp + 0x35082484], cl
add byte [eax], al
push eax
push 0x66
push ecx
call ebx
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
push 0x480
lea edx, [esp + 0x350c]
push edx
push eax
push ecx
call fcn.00404e50
mov eax, dword [0x4db884]
lea edx, [esp + 0x3508]
push edx
push 0x67
push eax
call ebx
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
push 0x480
lea ecx, [esp + 0x350c]
push ecx
push edx
push eax
call fcn.00404e50
mov edx, dword [0x4db884]
lea ecx, [esp + 0x3508]
push ecx
push 0x68
push edx
call ebx
cmp esi, 0xffffffff
je 0x44e4b8
push esi
lea eax, [esp + 0x79c]
push eax
lea ecx, [esp + 0x288]
call 0x3fd090
mov ecx, dword [eax + 0xc00]
add dword [0x4dc1b0], ecx
mov edx, dword [eax + 0xc04]
adc dword [0x4dc1b4], edx
or esi, 0xffffffff
call fcn.00440d50
cmp ebp, dword [esp + 0x384]
jge 0x44ec68
push ebp
lea ecx, [esp + 0x284]
call 0x3fd250
mov edi, eax
test byte [edi + 8], 8
mov dword [esp + 0x18], edi
je 0x44ec56
mov eax, dword [edi + 4]
mov ecx, dword [edi]
push 1
push 0
push eax
push ecx
mov esi, ebp
mov ecx, 0x4e0c60
mov dword [esp + 0x54], esi
call 0x3d4490
cmp eax, 1
jne 0x44ec56
lea edx, [esp + 0x140]
push edx
mov ecx, 0x4e0c60
call 0x3d3570
lea ecx, [esp + 0x1fdc]
call fcn.004280f0
lea ecx, [esp + 0x2000]
call fcn.004280f0
lea ecx, [esp + 0x2024]
call fcn.004280f0
mov ecx, dword [edi + 4]
mov edx, dword [edi]
push 0
lea eax, [esp + 0x13cc]
push eax
push ecx
push edx
call 0x3f35f0
test al, al
je 0x44ec56
cmp byte [0x4e5310], 0
jne 0x44e58d
cmp dword [esp + 0x1cc], 0
je 0x44e58d
push 0x50e
call fcn.0041be10
push eax
mov eax, dword [edi]
push eax
call fcn.0044d240
add esp, 8
jmp 0x44ec56
lea ecx, [esp + 0x4a08]
push ecx
push 0x4b587c
call fcn.0043f110
test al, al
je 0x44ec56
lea edx, [esp + 0x4a08]
push edx
call fcn.0046cbe8
mov esi, 1
add esp, 4
cmp dword [0x4dbca8], esi
jne 0x44e5ce
mov ecx, 0x4e2ef8
call 0x3dc180
call fcn.0043b3d0
call fcn.00437200
push 0x4e79f4
push 0x4e75f4
mov ecx, 0x4e0c60
call 0x3d3520
mov eax, dword [0x4e0e68]
mov ecx, dword [0x4e81f4]
mov dword [0x4e6194], eax
mov eax, 4
push 0x4b175c
mov dword [0x4e579c], esi
mov dword [0x4e5d80], eax
mov dword [0x4e5d84], eax
call fcn.00425960
push 0x4e75f4
push 0x20a
call fcn.0041be10
push eax
lea ecx, [esp + 0x3510]
push ecx
call fcn.0045e635
add esp, 0xc
lea edx, [esp + 0x3508]
push edx
call fcn.0043f8e0
cmp byte [0x4e5d7a], 0
mov eax, dword [0x4f82c0]
mov dword [esp + 0x1c], eax
je 0x44e666
mov byte [0x4e5d7a], 0
mov byte [esp + 0x16], 1
push 0
push 0
mov ecx, 0x4e0c60
call 0x3d60e0
cmp dword [0x4db888], 0
jne 0x44ec2b
invalid
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [0x4f82c0]
jne 0x44ec2b
push 0x4f81e8
call fcn.0043b7c0
cmp byte [0x4e4308], 0
mov edx, dword [0x4e57e4]
mov dword [esp + 0x40], edx
mov byte [0x4e58b2], 0
jne 0x44e717
xor edi, edi
push edi
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x38]
push ecx
mov ecx, 0x4e0c60
mov dword [esp + 0x3c], edi
mov dword [esp + 0x30], edi
call 0x3d39c0
cmp dword [esp + 0x24], edi
jbe 0x44e70a
push 0x4e4308
push 0x4b47a4
call fcn.0043f030
mov esi, eax
cmp esi, edi
je 0x44e70a
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
push esi
push edx
push 1
push eax
call fcn.0045fd82
push esi
call fcn.0045fba6
add esp, 0x14
mov ecx, dword [esp + 0x30]
push ecx
call fcn.0045efc5
mov cl, 8
add dword [eax], eax
add esp, 4
mov esi, dword [esp + 0x18]
mov eax, dword [esi]
push 0x400
lea edx, [esp + 0x620c]
push edx
push eax
call fcn.0040dfb0
xor eax, eax
jmp 0x44e740
mov cl, byte [esp + eax + 0x38c]
mov byte [esp + eax + 0x4608], cl
inc eax
test cl, cl
jne 0x44e740
cmp byte [esp + 0x4608], cl
je 0x44e769
lea ecx, [esp + 0x4608]
push ecx
call fcn.0040df70
mov edx, dword [esi]
push edx
call fcn.0040f440
cmp dword [0x4e6194], 0
mov byte [esp + 0x17], al
jne 0x44e78a
mov ebx, 0x4b1774
mov ebp, 0x4b5874
jmp 0x44e794
mov ebx, 0x4b19b8
mov ebp, 0x4b586c
cmp byte [0x4e3308], 0
je 0x44e7a7
mov ebx, 0x4b1778
mov ebp, 0x4b38f4
mov edi, dword [esp + 0x18]
mov eax, dword [edi]
push ebx
push eax
call fcn.0040dee0
test al, al
je 0x44e84b
cmp byte [esp + 0x4608], 0
je 0x44e7df
lea ecx, [esp + 0x6208]
push ecx
lea edx, [esp + 0x460c]
push edx
call fcn.00425330
test eax, eax
jne 0x44e84b
mov byte [esp + 0x15], 1
xor eax, eax
jmp 0x44e7f0
mov cl, byte [esp + eax + 0x4a08]
mov byte [eax + 0x4e75f4], cl
inc eax
test cl, cl
jne 0x44e7f0
push 0x4e75f4
call fcn.0040df70
mov eax, dword [edi + 4]
test eax, eax
je 0x44e8b0
cmp word [eax], 0
je 0x44e8b0
push 0x1000000
push 0x4e79f4
push 0x4e75f4
call fcn.0042d830
mov eax, dword [edi + 4]
push eax
call fcn.0040db70
push eax
push 0x4e79f4
call fcn.0042db90
jmp 0x44e8b9
cmp byte [esp + 0x4608], 0
mov byte [esp + 0x15], 0
je 0x44e98c
xor eax, eax
mov cl, byte [esp + eax + 0x4608]
mov byte [eax + 0x4e75f4], cl
inc eax
test cl, cl
jne 0x44e860
mov edx, dword [edi]
push edx
call fcn.0040daf0
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x44e880
mov edi, 0x4e75f4
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x44e891
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [esp + 0x18]
jmp 0x44e99d
xor ecx, ecx
mov word [0x4e79f4], cx
mov edx, dword [edi]
push edx
call fcn.0040daf0
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x44e8c3
mov edi, 0x4e75f4
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x44e8d4
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push 0x4e75f4
rep movsb byte es:[edi], byte [esi]
call fcn.0040de80
mov esi, eax
test esi, esi
je 0x44eaab
push 0x4e75f4
mov byte [esi], 0
call fcn.0040de80
mov byte [esi], 0x2e
test eax, eax
je 0x44eaab
cmp byte [esp + 0x17], 0
je 0x44eaab
cmp dword [esp + 0x150], 0
jne 0x44eaab
cmp dword [esp + 0x1b4], 0
je 0x44eaab
mov edx, eax
mov ecx, esi
sub edx, esi
mov al, byte [ecx]
mov byte [edx + ecx], al
inc ecx
test al, al
jne 0x44e943
push 0x4e79f4
call fcn.0040deb0
mov esi, eax
test esi, esi
je 0x44eaab
xor eax, eax
push 0x4e79f4
mov word [esi], ax
call fcn.0040deb0
mov ecx, 0x2e
mov word [esi], cx
test eax, eax
je 0x44eaab
push esi
push eax
call fcn.0042db30
jmp 0x44eaab
mov ecx, dword [edi]
mov edx, 0x4e75f4
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x44e993
push 0x4e75f4
call fcn.0040de80
mov esi, eax
test esi, esi
je 0x44ea00
push 0x4e75f4
mov byte [esi], 0
call fcn.0040de80
test eax, eax
je 0x44e9fd
push 0x4b2c28
push eax
call fcn.00425330
test eax, eax
je 0x44e9e8
cmp byte [esp + 0x17], 0
je 0x44e9fd
cmp dword [esp + 0x150], 0
jne 0x44e9fd
cmp dword [esp + 0x1b4], 0
je 0x44e9fd
push 0x4e79f4
call fcn.0040deb0
test eax, eax
je 0x44ea00
xor ecx, ecx
mov word [eax], cx
jmp 0x44ea00
mov byte [esi], 0x2e
push ebx
push 0x4e75f4
call fcn.0040f4f0
mov eax, dword [edi + 4]
test eax, eax
je 0x44ea72
cmp word [eax], 0
je 0x44ea72
cmp byte [esp + 0x4608], 0
je 0x44ea5a
push 0x1000000
push 0x4e79f4
lea edx, [esp + 0x4610]
push edx
call fcn.0042d830
mov eax, dword [edi + 4]
push eax
call fcn.0040db70
push eax
push 0x4e79f4
call fcn.0042db90
push ebp
invalid
hlt