Function at 0x49c410
Capabilities:
Write file on windows

Disassembly:
sub esp, 0x1c
push esi
push str.SetByHandle__
push 1
mov esi, ecx
lea eax, [esp + 0xe]
push eax
lea ecx, [esp + 0x13]
push ecx
lea edx, [esp + 0x1c]
push edx
mov ecx, esi
mov byte [esp + 0x1b], 0
mov byte [esp + 0x1a], 0
call fcn.00499920
mov dword [esp + 8], eax
test eax, eax
jne 0x49c710
cmp byte [esp + 7], al
jne 0x49c710
cmp byte [esp + 6], al
jne 0x49c710
mov eax, dword [0x4ee722]
inc eax
push ebx
mov ebx, dword [esp + 0x1c]
mov dword [0x4ee722], eax
mov dword [esi + 2], eax
cmp bl, 2
je 0x49c480
mov ecx, esi
call fcn.0049b900
mov ebx, dword [esp + 0x1c]
cmp dword [esp + 0x30], 0
push ebp
mov ebp, dword [esp + 0x2c]
je 0x49c4be
push ebx
push ebp
mov ecx, 0x4ee720
call fcn.00499260
cmp bl, 2
jne 0x49c4be
mov ecx, dword [esp + 0x22]
mov edx, dword [esp + 0x21]
lea eax, [esp + 0xe]
push eax
push ecx
push edx
mov ecx, esi
call fcn.0049c310
cmp byte [esp + 0xe], 0
jne 0x49c70e
push edi
mov edi, dword [esp + 0x34]
lea eax, [esp + 0x12]
push eax
push edi
mov ecx, 0x4ee720
call fcn.0049ad80
mov dword [esp + 0x14], eax
test eax, eax
jne 0x49c70d
cmp byte [esp + 0x12], al
jne 0x49c70d
movzx ebx, bp
mov ecx, ebx
imul ecx, dword [0x4eea60]
add ecx, dword [0x4eea5c]
push eax
push eax
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov ebp, dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xffffffff
jne 0x49c524
call ebp
mov dword [esp + 0x14], eax
test eax, eax
je 0x49c524
mov byte [esp + 0x12], 0x19
jmp 0x49c5d7
mov edx, dword [0x4eea60]
inc edx
push edx
push 0x4ef16c
mov ecx, esi
call fcn.00499840
mov dword [esp + 0x14], eax
test eax, eax
jne 0x49c5d2
mov ecx, dword [0x4eea60]
push eax
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x3c]
push eax
push ecx
push 0x4ef16c
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x49c5c5
mov edx, dword [0x4eea60]
cmp edx, dword [esp + 0x38]
jne 0x49c5bb
mov al, byte [esp + 0x24]
cmp al, 2
jne 0x49c585
push 0x4ef16c
push str.1G3RPC9696F5J76W9C6N77U2D9UYMZH
jmp 0x49c59f
cmp al, 1
je 0x49c595
cmp al, 5
je 0x49c595
cmp al, 4
je 0x49c595
cmp al, 6
jne 0x49c5ac
push 0x4ef16c
push str.RCJB9AJ64P9N8FBCN72B9BY5Z3TRGPF
push 0x4ee185
call fcn.0049e630
add esp, 0xc
push 0x4ee185
call fcn.0049dc80
add esp, 4
jmp 0x49c5ed
mov byte [esp + 0x12], 0x1a
jmp 0x49c70d
mov byte [esp + 0x12], 0x19
call ebp
mov dword [esp + 0x14], eax
jmp 0x49c5d7
mov byte [esp + 0x12], 0x1b
cmp dword [esp + 0x14], 0
jne 0x49c70d
cmp byte [esp + 0x12], 0
jne 0x49c70d
mov al, byte [esp + 0x24]
cmp al, 2
jne 0x49c65f
mov dword [0x4ee290], ebx
mov ecx, dword [esi + 2]
mov dword [0x4eea4c], ecx
cmp esi, 0x4ee298
je 0x49c628
push 0x17a
push esi
push 0x17a
push 0x4ee298
call fcn.00468a6e
mov al, byte [esp + 0x34]
add esp, 0x10
mov dword [0x4ee28c], 0x4ee298
mov byte [0x4ee58c], 0
cmp al, 2
jne 0x49c6e7
mov eax, dword [esp + 0x25]
lea edx, [esp + 0x38]
push edx
push eax
mov ecx, 0x4ee298
call fcn.00499a30
mov byte [0x4ee58c], al
jmp 0x49c6e7
cmp al, 1
je 0x49c66f
cmp al, 5
je 0x49c66f
cmp al, 4
je 0x49c66f
cmp al, 6
jne 0x49c6aa
mov dword [0x4ee294], ebx
mov ecx, dword [esi + 2]
mov dword [0x4eea50], ecx
cmp esi, 0x4ee412
je 0x49c69e
push 0x17a
push esi
push 0x17a
push 0x4ee412
call fcn.00468a6e
add esp, 0x10
mov dword [0x4ee28c], 0x4ee412
jmp 0x49c6e7
cmp al, 3
jne 0x49c6e7
mov dword [0x4ee590], ebx
mov edx, dword [esi + 2]
mov dword [0x4eea54], edx
cmp esi, 0x4ee594
je 0x49c6dd
push 0x17a
push esi
push 0x17a
push 0x4ee594
call fcn.00468a6e
add esp, 0x10
mov dword [0x4ee28c], 0x4ee594
mov eax, dword [esp + 0x44]
mov dword [0x4ee288], ebx
test eax, eax
je 0x49c70d
cmp esi, eax
je 0x49c70d
push 0x17a
push esi
push 0x17a
push eax
call fcn.00468a6e
add esp, 0x10
pop edi
pop ebp
pop ebx
mov eax, dword [esp + 0x30]
pop esi
test eax, eax
je 0x49c71f
mov cl, byte [esp + 3]
mov byte [eax], cl
mov eax, dword [esp + 0x30]
test eax, eax
je 0x49c72d
mov dl, byte [esp + 2]
mov byte [eax], dl
mov eax, dword [esp + 4]
add esp, 0x1c
ret 0x18