Function at 0x4a7a70
Capabilities:
Create process on windows
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5153bb
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x887c
call fcn.004f8350
mov eax, dword [0x544354]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
push 0x1018
push 0
lea eax, [ebp - 0x150c]
push eax
call fcn.004fa860
add esp, 0xc
cmp byte [0x54ba54], 0
je 0x4a7ae0
push 0x800
lea eax, [ebp - 0x150c]
push eax
mov ecx, 0x56e128
call fcn.00405080
jmp 0x4a7c09
lea ecx, [ebp - 0xd4]
call fcn.00494820
mov dword [ebp - 4], 0
push 1
lea eax, [ebp - 0xd4]
push eax
mov ecx, 0x570db0
call fcn.00440ec0
mov eax, dword [ebp - 0xbc]
test eax, eax
jne 0x4a7b70
push 0x30
push 0x65
call fcn.0048e4c0
push eax
push 0x14c
call fcn.0048e4c0
push eax
push dword [0x54b9c8]
call fcn.004cd560
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xd4]
test ecx, ecx
je 0x4a8b3b
cmp byte [ebp - 0xc4], 0
je 0x4a7b62
mov eax, dword [ebp - 0xcc]
add eax, eax
push eax
push ecx
call fcn.00491e00
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.004fe8b9
add esp, 4
jmp 0x4a8b3b
cmp eax, 1
jne 0x4a7b92
push 0
push 0x800
lea eax, [ebp - 0x150c]
push eax
lea ecx, [ebp - 0xd4]
call fcn.00494a10
test al, al
jne 0x4a7bd1
push 0x800
lea eax, [ebp - 0x3604]
push eax
mov ecx, 0x570db0
call fcn.00440d20
lea eax, [ebp - 0x3604]
push eax
call fcn.0047d830
cmp word [eax], 0
jne 0x4a7bbf
mov eax, str.report.
push 0x800
push eax
lea eax, [ebp - 0x150c]
push eax
call fcn.004947d0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xd4]
test ecx, ecx
je 0x4a7c09
cmp byte [ebp - 0xc4], 0
je 0x4a7c00
mov eax, dword [ebp - 0xcc]
add eax, eax
push eax
push ecx
call fcn.00491e00
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.004fe8b9
add esp, 4
cmp byte [0x54ba54], 0
mov eax, str.InterfaceReportArc
jne 0x4a7c1c
mov eax, str.InterfaceReportFile
push 0
push str.OutFormat
push eax
call fcn.004a5d50
test eax, eax
sete bl
mov dword [ebp - 0x508], 0
test bl, bl
mov eax, 0x526a8c
jne 0x4a7c46
mov eax, 0x526a94
push 0x800
push eax
lea eax, [ebp - 0x150c]
push eax
call fcn.0047d8d0
push 0x800
lea eax, [ebp - 0x150c]
push eax
push eax
mov ecx, 0x570db0
call fcn.004417b0
xor esi, esi
lea eax, [ebp - 0x150c]
push eax
call fcn.0046cad0
test al, al
je 0x4a7cea
test esi, esi
je 0x4a7c98
push 0x800
push 0
lea eax, [ebp - 0x150c]
push eax
call fcn.0047d8d0
push esi
push 0x526a9c
push 0xa
lea eax, [ebp - 0x28]
push eax
call fcn.00402720
add esp, 0x10
push 0x800
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x150c]
push eax
call fcn.0047d8d0
test bl, bl
mov eax, 0x526a8c
jne 0x4a7ccf
mov eax, 0x526a94
push 0x800
push eax
lea eax, [ebp - 0x150c]
push eax
call fcn.0047d8d0
inc esi
cmp esi, 0x3e8
jl 0x4a7c71
lea eax, [ebp - 0x150c]
push eax
push 0x4a9040
push dword [0x54b9c8]
push str.REPORT
push dword [0x57f310]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x4a8b3b
push 0x800
lea eax, [ebp - 0x150c]
push eax
push eax
mov ecx, 0x570db0
call fcn.004417b0
cmp dword [ebp - 0x508], 0
sete bh
mov byte [ebp - 0x8816], bh
push 0x526ab4
lea eax, [ebp - 0x150c]
push eax
call fcn.0046dd80
mov edi, eax
mov dword [ebp - 0x881c], edi
test edi, edi
jne 0x4a7d6f
lea eax, [ebp - 0x150c]
push eax
mov ecx, 0x57f41c
call fcn.004665f0
jmp 0x4a8b3b
push 0
push 0
push 0x51787c
push 0xc
call fcn.004cee40
mov byte [ebp - 0x8817], al
push 0x556
call fcn.0048e4c0
push eax
call fcn.004cd9b0
add esp, 4
cmp dword [ebp - 0x508], 1
jne 0x4a7dba
push edi
push 0xff
call fcn.004fee90
push edi
push 0xfe
call fcn.004fee90
add esp, 0x10
mov bl, 1
mov byte [ebp - 0x8815], bl
xor esi, esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], esi
cmp byte [0x54ba54], 0
jne 0x4a7df2
cmp byte [ebp - 0x4fe], 0
mov byte [ebp - 0x18], 0
jne 0x4a7df6
mov byte [ebp - 0x18], 1
lea ecx, [ebp - 0x885c]
call fcn.0043dd00
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x888c]
call fcn.0043dd00
mov byte [ebp - 4], 4
cmp byte [0x54ba54], 0
je 0x4a7e5b
push 0x800
lea eax, [ebp - 0x3604]
push eax
mov ecx, 0x56e128
call fcn.00405080
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x888c]
push eax
lea eax, [ebp - 0x885c]
push eax
lea eax, [ebp - 0x3604]
push eax
call fcn.004a7900
mov bl, al
jmp 0x4a81b0
lea ecx, [ebp - 0xd4]
call fcn.00494820
mov byte [ebp - 4], 5
push 1
lea eax, [ebp - 0xd4]
push eax
mov ecx, 0x570db0
call fcn.00440ec0
push 1
push 0
push 3
lea eax, [ebp - 0xd4]
push eax
lea ecx, [ebp - 0x771c]
call fcn.00490a40
mov byte [ebp - 4], 6
mov dword [ebp - 0x1544], 0
mov dword [ebp - 0x1540], 0
mov dword [ebp - 0x153c], 0
mov dword [ebp - 0x1538], 0
mov dword [ebp - 0x1534], 0
mov dword [ebp - 0x1530], 0
jmp 0x4a7ee0
lea eax, [ebp - 0x2554]
push eax
lea ecx, [ebp - 0x771c]
call fcn.00491710
test eax, eax
jne 0x4a8166
cmp byte [0x54ba56], al
jne 0x4a8166
call fcn.00447110
cmp byte [ebp - 0x4fe], 0
je 0x4a80c8
push 0x10f8
push 0
lea eax, [ebp - 0x8814]
push eax
call fcn.004fa860
add esp, 0xc
push 0x800
lea eax, [ebp - 0x2554]
push eax
lea eax, [ebp - 0x8814]
push eax
call fcn.004947d0
mov ecx, dword [ebp - 0x1554]
mov dword [ebp - 0x778c], ecx
mov eax, dword [ebp - 0x1550]
mov dword [ebp - 0x7788], eax
mov dword [ebp - 0x7794], ecx
mov dword [ebp - 0x7790], eax
cmp byte [ebp - 0x4fa], 0
je 0x4a7fcc
test dword [ebp - 0x154c], 0x800
je 0x4a7fcc
call fcn.00470750
test eax, eax
je 0x4a7fcc
lea eax, [ebp - 0x8820]
push eax
lea eax, [ebp - 0x2554]
push eax
call dword [sym.imp.KERNEL32.dll_GetCompressedFileSizeW]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4a7fad
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4a7fc6
xor ecx, ecx
mov eax, dword [ebp - 0x8820]
add ecx, ebx
adc eax, 0
mov dword [ebp - 0x778c], ecx
mov dword [ebp - 0x7788], eax
mov bl, byte [ebp - 0x8815]
mov eax, dword [ebp - 0x154c]
mov dword [ebp - 0x776c], eax
lea eax, [ebp - 0x151c]
push eax
lea ecx, [ebp - 0x7784]
call fcn.004962f0
mov dword [ebp - 0x7728], esi
inc esi
mov dword [ebp - 0x1c], esi
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x7794]
add dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x7790]
adc dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x778c]
add dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x7788]
adc dword [ebp - 0x20], eax
cmp byte [ebp - 0x4f8], 0
je 0x4a80a9
push dword [ebp - 0x776c]
call fcn.0046ccd0
test al, al
jne 0x4a80a9
lea ecx, [ebp - 0x3628]
call fcn.0046b040
mov byte [ebp - 4], 7
push 0
lea eax, [ebp - 0x2554]
push eax
lea ecx, [ebp - 0x3628]
call fcn.0046b720
test al, al
je 0x4a809a
mov byte [ebp - 4], 8
push 0
push SysReAllocString
push SysReAllocString
push dword [0x55f9b8]
push 0
lea eax, [ebp - 0x775c]
push eax
lea eax, [ebp - 0x3628]
push eax
call fcn.0046c120
mov dword [ebp - 4], 7
mov dword [ebp - 0x7760], 2
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x3628]
call fcn.0046b080
lea eax, [ebp - 0x8814]
push eax
lea ecx, [ebp - 0x885c]
call fcn.0043e360
cmp byte [ebp - 0x8830], 0
jne 0x4a8164
cmp byte [0x54ba56], 0
jne 0x4a8164
cmp byte [ebp - 0x4ff], 0
je 0x4a7ee0
cmp byte [ebp - 0x1548], 0
jne 0x4a7ee0
push 2
push 0
lea eax, [ebp - 0x2554]
push eax
mov ecx, 0x56e128
call fcn.00405c30
cmp eax, 1
jne 0x4a7ee0
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x888c]
push eax
lea eax, [ebp - 0x885c]
push eax
lea eax, [ebp - 0x2554]
push eax
call fcn.004a7900
test al, al
je 0x4a8164
mov esi, dword [ebp - 0x1c]
jmp 0x4a7ee0
xor bl, bl
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x771c]
call fcn.00490b30
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0xd4]
test ecx, ecx
je 0x4a81aa
cmp byte [ebp - 0xc4], 0
je 0x4a81a1
mov eax, dword [ebp - 0xcc]
add eax, eax
push eax
push ecx
call fcn.00491e00
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.004fe8b9
add esp, 4
mov bh, byte [ebp - 0x8816]
test bl, bl
je 0x4a8b05
lea ecx, [ebp - 0x885c]
call fcn.00415370
lea ecx, [ebp - 0x888c]
call fcn.00415370
cmp dword [ebp - 0x504], 8
je 0x4a8205
lea eax, [ebp - 0x150c]
mov dword [0x58c944], eax
push 0x4a9740
push 0x70
push dword [ebp - 0x8858]
push 0
lea ecx, [ebp - 0x885c]
call fcn.0043e250
push eax
call fcn.00502bb0
add esp, 0x10
test bh, bh
je 0x4a829e
mov dword [ebp - 0x8824], 0
mov dword [ebp - 0x8820], 0
lea ecx, [ebp - 0x8824]
call fcn.00495df0
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x8824]
call fcn.00495a60
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
push dword [ebp - 0x54]
push dword [ebp - 0x58]
push 0x526460
push 0x32
lea eax, [ebp - 0xd8]
push eax
call fcn.00402720
add esp, 0x20
lea eax, [ebp - 0xd8]
push eax
push 0x55b
call fcn.0048e4c0
push eax
push 0x864
lea eax, [ebp - 0x25d4]
push eax
call fcn.00402720
lea eax, [ebp - 0x25d4]
push eax
push str._html__r_n_head__r_n_meta_http_equiv_Content_Type__content_text_html__charsetUTF_8____r_n_title__s__title__r_n__head__r_n_body__r_n_pre__r_n
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0x20
xor esi, esi
mov dword [ebp - 0x8820], esi
xor eax, eax
mov dword [ebp - 0x881c], eax
cmp dword [ebp - 0x8858], eax
jbe 0x4a864a
lea ebx, [ebx]
push eax
lea eax, [ebp - 0x8814]
push eax
lea ecx, [ebp - 0x885c]
call fcn.0043e020
cmp byte [ebp - 0x4fd], 0
je 0x4a83a1
mov eax, dword [ebp - 0x7724]
cmp eax, esi
je 0x4a83a1
mov dword [ebp - 0x8820], eax
test bh, bh
je 0x4a830c
push 0x526bc4
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
push 0x526bcc
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
mov eax, dword [ebp - 0x7724]
test eax, eax
je 0x4a835b
dec eax
push eax
lea eax, [ebp - 0x2604]
push eax
lea ecx, [ebp - 0x888c]
call fcn.0043e020
push eax
push 0x28a
call fcn.0048e4c0
push eax
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0x10
jmp 0x4a8375
push 0x558
call fcn.0048e4c0
push eax
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
test bh, bh
je 0x4a838d
push 0x526bd4
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
push 0x51b4bc
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
xor eax, eax
mov word [ebp - 0x5e28], ax
push dword [ebp - 0x776c]
call fcn.0046ccd0
mov bl, al
cmp byte [ebp - 0x4f9], 0
je 0x4a842a
mov ecx, dword [ebp - 0x7784]
mov dword [ebp - 0x882c], ecx
mov ecx, dword [ebp - 0x7780]
mov dword [ebp - 0x8828], ecx
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x882c]
call fcn.00495a60
lea ecx, [ebp - 0x5e28]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a83f0
sub ecx, edx
sar ecx, 1
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
push dword [ebp - 0x54]
push dword [ebp - 0x58]
push str._u__02u__02u__02u:_02u
push 0x1400
lea eax, [ebp - 0x5e28]
lea eax, [eax + ecx*2]
push eax
call fcn.00402720
add esp, 0x20
cmp byte [ebp - 0x4fb], 0
je 0x4a84c2
mov ecx, dword [ebp - 0x7794]
mov eax, dword [ebp - 0x7790]
cmp ecx, 0x7fffffff
jne 0x4a8461
cmp eax, ecx
jne 0x4a8461
push 0x1e
push 0x51b260
lea eax, [ebp - 0x70]
push eax
call fcn.004947d0
jmp 0x4a8471
push 0xa
lea edx, [ebp - 0x70]
push edx
push eax
push ecx
call fcn.0050380e
add esp, 0x10
lea esi, [ebp - 0x5e28]
lea ecx, [esi + 2]
lea ebx, [ebx]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a8480
sub esi, ecx
sar esi, 1
test bl, bl
je 0x4a849f
push 0x573
call fcn.0048e4c0
jmp 0x4a84a2
lea eax, [ebp - 0x70]
push eax
push str._12s
mov eax, 0x1400
sub eax, esi
push eax
lea eax, [ebp - 0x5e28]
lea eax, [eax + esi*2]
push eax
call fcn.00402720
add esp, 0x10
cmp byte [ebp - 0x4fa], 0
je 0x4a8554
mov ecx, dword [ebp - 0x778c]
mov eax, dword [ebp - 0x7788]
cmp ecx, 0x7fffffff
jne 0x4a84f9
cmp eax, ecx
jne 0x4a84f9
push 0x1e
push 0x51b260
lea eax, [ebp - 0x70]
push eax
call fcn.004947d0
jmp 0x4a8509
push 0xa
lea edx, [ebp - 0x70]
push edx
push eax
push ecx
call fcn.0050380e
add esp, 0x10
lea esi, [ebp - 0x5e28]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a8512
sub esi, ecx
sar esi, 1
test bl, bl
je 0x4a8531
push 0x573
call fcn.0048e4c0
jmp 0x4a8534
lea eax, [ebp - 0x70]
push eax
push str._12s
mov eax, 0x1400
sub eax, esi
push eax
lea eax, [ebp - 0x5e28]
lea eax, [eax + esi*2]
push eax
call fcn.00402720
add esp, 0x10
cmp byte [ebp - 0x4f8], 0
je 0x4a85f8
mov eax, dword [ebp - 0x7760]
cmp eax, 3
jne 0x4a8587
push 0x41
lea eax, [ebp - 0xf4]
push eax
push 0
push 0x20
lea eax, [ebp - 0x775c]
push eax
call fcn.00493e50
jmp 0x4a85ca
cmp eax, 1
je 0x4a85ad
cmp eax, 2
je 0x4a85a6
push 0x41
push 0x526c24
lea eax, [ebp - 0xf4]
push eax
call fcn.004947d0
jmp 0x4a85ca
mov eax, str._08X
jmp 0x4a85b2
mov eax, 0x51b264
push dword [ebp - 0x775c]
push eax
push 0x41
lea eax, [ebp - 0xf4]
push eax
call fcn.00402720
add esp, 0x10
push 0x1400
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0x5e28]
push eax
call fcn.00494790
push 0x1400
push 0x526c38
lea eax, [ebp - 0x5e28]
push eax
call fcn.00494790
push 0x1400
lea eax, [ebp - 0x8814]
push eax
lea eax, [ebp - 0x5e28]
push eax
call fcn.00494790
lea eax, [ebp - 0x5e28]
push eax
push str._s_r_n
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0x10
mov eax, dword [ebp - 0x881c]
inc eax
mov dword [ebp - 0x881c], eax
cmp eax, dword [ebp - 0x8858]
mov esi, dword [ebp - 0x8820]
jb 0x4a82c0
cmp byte [ebp - 0x4fc], 0
je 0x4a8980
push 0xa
lea eax, [ebp - 0x70]
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
call fcn.0050380e
push 0xa
lea eax, [ebp - 0xb0]
push eax
push dword [ebp - 0x20]
push dword [ebp - 0x24]
call fcn.0050380e
add esp, 0x20
test bh, bh
je 0x4a8697
push 0x526bc4
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
push 0x526c40
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
xor eax, eax
mov word [ebp - 0x2f4], ax
mov word [ebp - 0x4f4], ax
cmp byte [ebp - 0x4f9], al
je 0x4a8740
lea esi, [ebp - 0x4f4]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a86d0
sub esi, ecx
sar esi, 1
push 0x1ac
call fcn.0048e4c0
push eax
push str.___14s
push 0x100
lea eax, [ebp - 0x4f4]
lea eax, [eax + esi*2]
push eax
call fcn.00402720
add esp, 0x10
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a8710
sub ecx, edx
sar ecx, 1
push 0x51787c
push str.___14s
push 0x100
lea eax, [ebp - 0x2f4]
lea eax, [eax + ecx*2]
push eax
call fcn.00402720
add esp, 0x10
cmp byte [ebp - 0x4fb], 0
je 0x4a87bf
lea esi, [ebp - 0x4f4]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a8752
sub esi, ecx
sar esi, 1
push 0x6f
call fcn.0048e4c0
push eax
push str._12s
push 0x100
lea eax, [ebp - 0x4f4]
lea eax, [eax + esi*2]
push eax
call fcn.00402720
add esp, 0x10
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
mov edi, edi
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a8790
sub ecx, edx
sar ecx, 1
lea eax, [ebp - 0x70]
push eax
push str._12s
push 0x100
lea eax, [ebp - 0x2f4]
lea eax, [eax + ecx*2]
push eax
call fcn.00402720
add esp, 0x10
cmp byte [ebp - 0x4fa], 0
je 0x4a8843
lea esi, [ebp - 0x4f4]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a87d5
sub esi, ecx
sar esi, 1
push 0x71
call fcn.0048e4c0
push eax
push str._12s
push 0x100
lea eax, [ebp - 0x4f4]
lea eax, [eax + esi*2]
push eax
call fcn.00402720
add esp, 0x10
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a8811
sub ecx, edx
sar ecx, 1
lea eax, [ebp - 0xb0]
push eax
push str._12s
push 0x100
lea eax, [ebp - 0x2f4]
lea eax, [eax + ecx*2]
push eax
call fcn.00402720
add esp, 0x10
cmp byte [ebp - 0x4f8], 0
je 0x4a8878
push 0x100
push 0x526c5c
lea eax, [ebp - 0x4f4]
push eax
call fcn.00494790
push 0x100
push 0x526c5c
lea eax, [ebp - 0x2f4]
push eax
call fcn.00494790
cmp word [ebp - 0x4f4], 0
jne 0x4a88ae
push 0x100
push 0x526c74
lea eax, [ebp - 0x4f4]
push eax
call fcn.004947d0
push 0x100
push 0x526c74
lea eax, [ebp - 0x2f4]
push eax
call fcn.004947d0
push 0x100
push 0x559
call fcn.0048e4c0
push eax
lea eax, [ebp - 0x4f4]
push eax
call fcn.00494790
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a88d3
sub ecx, edx
sar ecx, 1
push dword [ebp - 0x34]
push 0x519bd4
mov eax, 0x100
sub eax, ecx
push eax
lea eax, [ebp - 0x2f4]
lea eax, [eax + ecx*2]
push eax
call fcn.00402720
add esp, 0x10
cmp word [ebp - 0x4f4], 0x20
jne 0x4a8926
cmp word [ebp - 0x4f2], 0x20
jne 0x4a8926
mov eax, 0x23
mov word [ebp - 0x4f4], ax
jmp 0x4a892b
mov eax, 0x23
cmp word [ebp - 0x2f4], 0x20
jne 0x4a8946
cmp word [ebp - 0x2f2], 0x20
jne 0x4a8946
mov word [ebp - 0x2f4], ax
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0x4f4]
push eax
push str._s_r_n_s_r_n
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0x14
test bh, bh
je 0x4a8998
push 0x526bd4
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
test bh, bh
je 0x4a8998
push str.__pre__r_n__body__r_n__html__r_n
push dword [ebp - 0x508]
push edi
call fcn.004a9610
add esp, 0xc
cmp byte [ebp - 0x50b], 0
je 0x4a8a74
push edi
call fcn.005039df
push edi
call fcn.0050302d
push eax
call fcn.005019a1
add esp, 0xc
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4a8a74
mov byte [ebp - 4], 0xb
lea ecx, [ebx + 2]
push ecx
lea ecx, [ebp - 0x48]
call fcn.00407f70
mov byte [ebp - 4], 0xc
push 0
push 0
push edi
call fcn.00502aa9
add esp, 0xc
push edi
push ebx
push 1
mov esi, dword [ebp - 0x48]
push esi
call fcn.0050273f
add esp, 0x10
mov byte [esi + ebx], 0
mov byte [esi + ebx + 1], 0
mov eax, dword [ebp - 0x508]
sub eax, 0
je 0x4a8a3a
sub eax, 1
je 0x4a8a32
sub eax, 1
jne 0x4a8a68
push dword [ebp - 0x44]
lea ecx, [ebp - 0x28]
call fcn.00446c00
mov byte [ebp - 4], 0xd
push dword [ebp - 0x24]
mov ebx, dword [ebp - 0x28]
push ebx
push esi
call fcn.00497720
jmp 0x4a8a56
push esi
call fcn.00446e40
jmp 0x4a8a68
push dword [ebp - 0x44]
lea ecx, [ebp - 0x28]
call fcn.00446c00
mov byte [ebp - 4], 0xe
push dword [ebp - 0x24]
mov ebx, dword [ebp - 0x28]
push ebx
push esi
call fcn.00497840
push ebx
call fcn.00446e40
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x28]
call fcn.00404110
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x48]
call fcn.004040b0
mov dword [ebp - 4], 4
push edi
call fcn.004fede7
add esp, 4
cmp byte [ebp - 0x50c], 0
je 0x4a8adb
push 8
push 0
push 0
lea eax, [ebp - 0x150c]
push eax
push str.print
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp eax, 0x20
seta al
test al, al
jne 0x4a8adb
lea eax, [ebp - 0x150c]
push eax
call fcn.004a8d00
test al, al
jne 0x4a8adb
lea eax, [ebp - 0x150c]
push eax
push 0x557
call fcn.0048e4c0
push eax
call fcn.004d1700
add esp, 8
cmp byte [0x54ba54], 0
jne 0x4a8b05
cmp word [ebp - 0x150c], 0
je 0x4a8b05
lea eax, [ebp - 0x150c]
push eax
call fcn.0047d830
push eax
mov ecx, 0x570db0
call fcn.004444e0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x888c]
call fcn.0043df10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x885c]
call fcn.0043df10
cmp byte [ebp - 0x8817], 0
je 0x4a8b3b
push dword [0x54b9d4]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004f833c
mov esp, ebp
pop ebp
ret