Function at 0x49a490
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x394
mov eax, dword [0x62cf50]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x6335c4]
push edi
mov edi, ecx
cmp eax, dword [0x62bc7c]
je 0x49a7b7
push esi
test eax, eax
jne 0x49a6d6
push 0x104
lea eax, [ebp - 0x20c]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x49a4f7
cmp eax, 0x104
jae 0x49a4f7
lea eax, [ebp - 0x20c]
push 0x5c
push eax
call fcn.0056b200
add esp, 8
test eax, eax
je 0x49a4f7
mov byte [eax], 0
cmp byte [0x633bc8], 0
je 0x49a599
mov esi, 0x633bc8
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x49a510
sub esi, ecx
lea eax, [esi + 0x14]
cmp eax, 0x105
jae 0x49a554
push esi
lea eax, [ebp - 0x108]
push 0x633bc8
push eax
lfence
call fcn.005762f0
add esp, 0xc
cmp esi, 0x104
jae 0x49a7c6
mov byte [ebp + esi - 0x108], 0
jmp 0x49a5ee
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x394]
call fcn.00499a20
lea edx, [ebp - 0x108]
mov ecx, dword [eax]
nop
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx], al
lea edx, [edx + 1]
test al, al
jne 0x49a570
mov eax, dword [ebp - 0x394]
lea ecx, [ebp - 0x390]
cmp eax, ecx
je 0x49a5ee
push eax
call fcn.0040a1b5
add esp, 4
jmp 0x49a5ee
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x394]
call fcn.00499a20
lea edx, [ebp - 0x108]
mov ecx, dword [eax]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx], al
lea edx, [edx + 1]
test al, al
jne 0x49a5b3
mov eax, dword [ebp - 0x394]
lea ecx, [ebp - 0x390]
cmp eax, ecx
je 0x49a5da
push eax
call fcn.0040a1b5
add esp, 4
lea eax, [ebp - 0x108]
push 0x5c016c
push eax
call fcn.00499990
add esp, 8
lea eax, [ebp - 0x108]
push 0x5c0164
push eax
call fcn.00499990
lea eax, [ebp - 0x108]
push str._TimeInfo.log
push eax
call fcn.00499990
lea eax, [ebp - 0x108]
push 0x5c0228
push eax
call fcn.0057604d
mov edx, eax
add esp, 0x18
mov dword [0x6335c4], edx
test edx, edx
jne 0x49a64a
mov eax, dword [0x62bc7c]
pop esi
mov dword [0x6335c4], eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call int.004016cd
mov esp, ebp
pop ebp
ret
cmp byte [0x6335b9], 0
jne 0x49a6d6
mov ecx, 0x6337c8
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49a660
push edx
sub ecx, esi
push 1
push ecx
push 0x6337c8
call fcn.00576283
mov ecx, 0x6339c8
add esp, 0x10
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49a682
push dword [0x6335c4]
sub ecx, edx
push 1
push ecx
push 0x6339c8
call fcn.00576283
mov ecx, 0x6335c8
add esp, 0x10
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49a6b0
push dword [0x6335c4]
sub ecx, edx
push 1
push ecx
push 0x6335c8
call fcn.00576283
add esp, 0x10
mov byte [0x6335b9], 1
push 0x5c022c
push dword [edi + 0x14]
call fcn.0056b470
add esp, 8
test eax, eax
je 0x49a706
nop word [eax + eax]
inc eax
push 0x5c022c
push eax
mov dword [edi + 0x14], eax
call fcn.0056b470
add esp, 8
test eax, eax
jne 0x49a6f0
mov eax, dword [edi + 0x28]
test eax, eax
je 0x49a791
mov edx, dword [edi + 0x24]
mov ecx, dword [edi + 0x20]
push eax
push dword [edi + 0x18]
push dword [edi + 0x14]
push dword [edi + 0x10]
call fcn.005530a0
mov edx, dword [0x6335b4]
mov ecx, dword [0x6335b0]
movsd qword [ebp - 0x310], xmm0
call fcn.005530a0
movsd xmm1, qword [ebp - 0x310]
lea eax, [ebp - 0x308]
divsd xmm1, xmm0
sub esp, 8
movsd qword [esp], xmm1
push str._n_16.6lf_t_s_t_s_t_d_t_d_calls_n
push eax
call fcn.00499950
lea ecx, [ebp - 0x308]
add esp, 0x20
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49a770
push dword [0x6335c4]
sub ecx, edx
lea eax, [ebp - 0x308]
push 1
push ecx
push eax
call fcn.00576283
add esp, 0x10
mov byte [edi + 0x30], 1
sub dword [0x6335bc], 1
jne 0x49a7b6
push dword [0x6335c4]
call fcn.00424e93
add esp, 4
mov dword [0x6335c4], 0
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop edi
call int.004016cd
mov esp, ebp
pop ebp
ret
call fcn.00552c41
int3