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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x508c4e
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x8844
call fcn.004ebbf0
mov eax, dword [0x528af4]
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.004ee100
add esp, 0xc
cmp byte [0x53898c], 0
je 0x4a1a20
push 0x800
lea eax, [ebp - 0x150c]
push eax
mov ecx, 0x55a850
call fcn.00404e00
jmp 0x4a1b19
lea ecx, [ebp - 0xd0]
call fcn.0048e750
mov dword [ebp - 4], 0
push 1
lea eax, [ebp - 0xd0]
push eax
mov ecx, 0x55d4d8
call fcn.0043f800
mov eax, dword [ebp - 0xbc]
test eax, eax
jne 0x4a1a92
push 0x30
push 0x65
call fcn.00488530
push eax
push 0x14c
call fcn.00488530
push eax
push dword [0x538900]
call fcn.004c4910
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x4a2abe
push eax
call fcn.004f252e
add esp, 4
jmp 0x4a2abe
cmp eax, 1
jne 0x4a1ab4
push 0
push 0x800
lea eax, [ebp - 0x150c]
push eax
lea ecx, [ebp - 0xd0]
call fcn.0048e940
test al, al
jne 0x4a1aff
push 0x800
lea eax, [ebp - 0x35f4]
push eax
mov ecx, 0x55d4d8
call fcn.0043f660
lea eax, [ebp - 0x35f4]
push eax
call fcn.00478eb0
mov ecx, eax
cmp word [ecx], 0
jne 0x4a1ae3
mov ecx, str.report.
lea edx, [ebp - 0x150c]
sub edx, ecx
jmp 0x4a1af0
movzx eax, word [ecx]
mov word [edx + ecx], ax
lea ecx, [ecx + 2]
test ax, ax
jne 0x4a1af0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x4a1b19
push eax
call fcn.004f252e
add esp, 4
cmp byte [0x53898c], 0
mov eax, str.InterfaceReportArc
jne 0x4a1b2c
mov eax, str.InterfaceReportFile
push 0
push str.OutFormat
push eax
call fcn.0049fd30
test eax, eax
sete bl
mov dword [ebp - 0x508], 0
test bl, bl
mov eax, 0x5107cc
jne 0x4a1b56
mov eax, 0x5107d4
push 0x800
push eax
lea eax, [ebp - 0x150c]
push eax
call fcn.00478f50
push 0x800
lea eax, [ebp - 0x150c]
push eax
push eax
mov ecx, 0x55d4d8
call fcn.00440000
xor esi, esi
lea eax, [ebp - 0x150c]
push eax
call fcn.00469360
test al, al
je 0x4a1bfa
test esi, esi
je 0x4a1ba8
push 0x800
push 0
lea eax, [ebp - 0x150c]
push eax
call fcn.00478f50
push esi
push 0x5107dc
push 0xa
lea eax, [ebp - 0x28]
push eax
call fcn.004028e0
add esp, 0x10
push 0x800
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x150c]
push eax
call fcn.00478f50
test bl, bl
mov eax, 0x5107cc
jne 0x4a1bdf
mov eax, 0x5107d4
push 0x800
push eax
lea eax, [ebp - 0x150c]
push eax
call fcn.00478f50
inc esi
cmp esi, 0x3e8
jl 0x4a1b81
lea eax, [ebp - 0x150c]
push eax
push 0x4a2f90
push dword [0x538900]
push str.REPORT
push dword [0x56df20]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x4a2abe
push 0x800
lea eax, [ebp - 0x150c]
push eax
push eax
mov ecx, 0x55d4d8
call fcn.00440000
cmp dword [ebp - 0x508], 0
sete byte [ebp - 0x87ee]
push 0x5107f4
lea eax, [ebp - 0x150c]
push eax
call fcn.0046a5a0
mov ebx, eax
mov dword [ebp - 0x87f8], ebx
test ebx, ebx
jne 0x4a1c7d
lea eax, [ebp - 0x150c]
push eax
mov ecx, 0x56df60
call fcn.00462ca0
jmp 0x4a2abe
push 0
push 0
push 0x50b8c4
push 0xc
call fcn.004c5f90
mov byte [ebp - 0x87ef], al
push 0x556
call fcn.00488530
push eax
call fcn.004c4d60
add esp, 4
cmp dword [ebp - 0x508], 1
jne 0x4a1cc8
push ebx
push 0xff
call fcn.004f2ac0
push ebx
push 0xfe
call fcn.004f2ac0
add esp, 0x10
mov byte [ebp - 0x87ed], 1
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 [0x53898c], 0
jne 0x4a1cff
cmp byte [ebp - 0x4fe], 0
mov byte [ebp - 0x18], 0
jne 0x4a1d03
mov byte [ebp - 0x18], 1
lea ecx, [ebp - 0x882c]
call fcn.0043cf40
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x8854]
call fcn.0043cf40
mov byte [ebp - 4], 4
cmp byte [0x53898c], 0
je 0x4a1d66
push 0x800
lea eax, [ebp - 0x35f4]
push eax
mov ecx, 0x55a850
call fcn.00404e00
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x8854]
push eax
lea eax, [ebp - 0x882c]
push eax
lea eax, [ebp - 0x35f4]
push eax
call fcn.004a1860
jmp 0x4a209d
lea ecx, [ebp - 0xd0]
call fcn.0048e750
mov byte [ebp - 4], 5
push 1
lea eax, [ebp - 0xd0]
push eax
mov ecx, 0x55d4d8
call fcn.0043f800
push 1
push 0
push 3
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x7704]
call fcn.0048a9b0
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
lea eax, [ebp - 0x2554]
push eax
lea ecx, [ebp - 0x7704]
call fcn.0048b630
test eax, eax
jne 0x4a2071
cmp byte [0x53898e], al
jne 0x4a2071
call fcn.00445680
cmp byte [ebp - 0x4fe], 0
je 0x4a1fc8
push 0x10e8
push 0
lea eax, [ebp - 0x87ec]
push eax
call fcn.004ee100
add esp, 0xc
xor ecx, ecx
movzx eax, word [ebp + ecx - 0x2554]
mov word [ebp + ecx - 0x87ec], ax
lea ecx, [ecx + 2]
test ax, ax
jne 0x4a1e30
mov ecx, dword [ebp - 0x1554]
mov dword [ebp - 0x7764], ecx
mov eax, dword [ebp - 0x1550]
mov dword [ebp - 0x7760], eax
mov dword [ebp - 0x776c], ecx
mov dword [ebp - 0x7768], eax
cmp byte [ebp - 0x4fa], 0
je 0x4a1ec8
test dword [ebp - 0x154c], 0x800
je 0x4a1ec8
call fcn.0046bee0
test eax, eax
je 0x4a1ec8
lea eax, [ebp - 0x87f4]
push eax
lea eax, [ebp - 0x2554]
push eax
call dword [sym.imp.KERNEL32.dll_GetCompressedFileSizeW]
mov edi, eax
cmp edi, 0xffffffff
jne 0x4a1eaf
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4a1ec8
xor ecx, ecx
mov eax, dword [ebp - 0x87f4]
add ecx, edi
adc eax, 0
mov dword [ebp - 0x7764], ecx
mov dword [ebp - 0x7760], eax
mov eax, dword [ebp - 0x154c]
mov dword [ebp - 0x7754], eax
lea eax, [ebp - 0x151c]
push eax
lea ecx, [ebp - 0x775c]
call fcn.0048f980
mov dword [ebp - 0x7710], esi
inc esi
mov dword [ebp - 0x1c], esi
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x776c]
add dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x7768]
adc dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x7764]
add dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x7760]
adc dword [ebp - 0x20], eax
cmp byte [ebp - 0x4f8], 0
je 0x4a1fa9
push dword [ebp - 0x7754]
call fcn.00469570
test al, al
jne 0x4a1fa9
lea ecx, [ebp - 0x3618]
call fcn.00467980
mov byte [ebp - 4], 7
push 0
lea eax, [ebp - 0x2554]
push eax
lea ecx, [ebp - 0x3618]
call fcn.00468010
test al, al
je 0x4a1f9a
mov byte [ebp - 4], 8
push 0
push SysReAllocString
push SysReAllocString
push dword [0x54c240]
push 0
lea eax, [ebp - 0x7744]
push eax
lea eax, [ebp - 0x3618]
push eax
call fcn.00468930
mov dword [ebp - 4], 7
mov dword [ebp - 0x7748], 2
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x3618]
call fcn.004679c0
lea eax, [ebp - 0x87ec]
push eax
lea ecx, [ebp - 0x882c]
call fcn.0043d430
cmp byte [ebp - 0x8808], 0
jne 0x4a206a
cmp byte [0x53898e], 0
jne 0x4a206a
cmp byte [ebp - 0x4ff], 0
je 0x4a1de0
cmp byte [ebp - 0x1548], 0
jne 0x4a1de0
push 2
push 0
lea eax, [ebp - 0x2554]
push eax
mov ecx, 0x55a850
call fcn.004059c0
cmp eax, 1
jne 0x4a1de0
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x8854]
push eax
lea eax, [ebp - 0x882c]
push eax
lea eax, [ebp - 0x2554]
push eax
call fcn.004a1860
test al, al
je 0x4a206a
mov esi, dword [ebp - 0x1c]
jmp 0x4a1de0
mov byte [ebp - 0x87ed], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x7704]
call fcn.0048aaa0
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x4a2097
push eax
call fcn.004f252e
add esp, 4
mov al, byte [ebp - 0x87ed]
test al, al
je 0x4a2a88
lea ecx, [ebp - 0x882c]
call fcn.0043d690
lea ecx, [ebp - 0x8854]
call fcn.0043d690
cmp dword [ebp - 0x504], 6
je 0x4a20f2
lea eax, [ebp - 0x150c]
mov dword [0x57a084], eax
push 0x4a3690
push 0x60
push dword [ebp - 0x8828]
push 0
lea ecx, [ebp - 0x882c]
call fcn.0043d380
push eax
call fcn.004f68a0
add esp, 0x10
cmp byte [ebp - 0x87ee], 0
je 0x4a2190
mov dword [ebp - 0x87fc], 0
mov dword [ebp - 0x87f8], 0
lea ecx, [ebp - 0x87fc]
call fcn.0048fd80
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x87fc]
call fcn.0048fa10
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
push dword [ebp - 0x54]
push dword [ebp - 0x58]
push 0x5101b0
push 0x32
lea eax, [ebp - 0xd8]
push eax
call fcn.004028e0
add esp, 0x20
lea eax, [ebp - 0xd8]
push eax
push 0x55b
call fcn.00488530
push eax
push 0x864
lea eax, [ebp - 0x25d4]
push eax
call fcn.004028e0
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 ebx
call fcn.004a3560
add esp, 0x20
xor esi, esi
mov dword [ebp - 0x87f4], esi
xor edi, edi
cmp dword [ebp - 0x8828], esi
jbe 0x4a2526
push edi
lea eax, [ebp - 0x87ec]
push eax
lea ecx, [ebp - 0x882c]
call fcn.0043d1b0
cmp byte [ebp - 0x4fd], 0
je 0x4a2291
mov eax, dword [ebp - 0x770c]
cmp eax, esi
je 0x4a2291
mov dword [ebp - 0x87f4], eax
cmp byte [ebp - 0x87ee], 0
je 0x4a21f7
push 0x510904
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
push 0x51090c
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
mov eax, dword [ebp - 0x770c]
test eax, eax
je 0x4a2246
dec eax
push eax
lea eax, [ebp - 0x25f4]
push eax
lea ecx, [ebp - 0x8854]
call fcn.0043d1b0
push eax
push 0x28a
call fcn.00488530
push eax
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0x10
jmp 0x4a2260
push 0x558
call fcn.00488530
push eax
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
cmp byte [ebp - 0x87ee], 0
je 0x4a227d
push str.__b_
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
push 0x50fb08
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
xor eax, eax
mov word [ebp - 0x5e18], ax
push dword [ebp - 0x7754]
call fcn.00469570
mov byte [ebp - 0x87ed], al
cmp byte [ebp - 0x4f9], 0
je 0x4a231e
mov ecx, dword [ebp - 0x775c]
mov dword [ebp - 0x87fc], ecx
mov ecx, dword [ebp - 0x7758]
mov dword [ebp - 0x87f8], ecx
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x87fc]
call fcn.0048fa10
lea ecx, [ebp - 0x5e18]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a22e4
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 - 0x5e18]
lea eax, [eax + ecx*2]
push eax
call fcn.004028e0
add esp, 0x20
cmp byte [ebp - 0x4fb], 0
je 0x4a23ac
mov ecx, dword [ebp - 0x776c]
mov eax, dword [ebp - 0x7768]
cmp ecx, 0x7fffffff
jne 0x4a234c
cmp eax, ecx
jne 0x4a234c
mov dword [ebp - 0x70], 0x3f
jmp 0x4a235c
push 0xa
lea edx, [ebp - 0x70]
push edx
push eax
push ecx
call fcn.004f73fe
add esp, 0x10
cmp byte [ebp - 0x87ed], 0
je 0x4a2373
push 0x573
call fcn.00488530
mov edx, eax
jmp 0x4a2376
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x5e18]
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a2380
sub ecx, esi
sar ecx, 1
push edx
push str._12s
push 0x1400
lea eax, [ebp - 0x5e18]
lea eax, [eax + ecx*2]
push eax
call fcn.004028e0
add esp, 0x10
cmp byte [ebp - 0x4fa], 0
je 0x4a243c
mov ecx, dword [ebp - 0x7764]
mov eax, dword [ebp - 0x7760]
cmp ecx, 0x7fffffff
jne 0x4a23da
cmp eax, ecx
jne 0x4a23da
mov dword [ebp - 0x70], 0x3f
jmp 0x4a23ea
push 0xa
lea edx, [ebp - 0x70]
push edx
push eax
push ecx
call fcn.004f73fe
add esp, 0x10
cmp byte [ebp - 0x87ed], 0
je 0x4a2401
push 0x573
call fcn.00488530
mov edx, eax
jmp 0x4a2404
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x5e18]
lea esi, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a2410
sub ecx, esi
sar ecx, 1
push edx
push str._12s
push 0x1400
lea eax, [ebp - 0x5e18]
lea eax, [eax + ecx*2]
push eax
call fcn.004028e0
add esp, 0x10
cmp byte [ebp - 0x4f8], 0
je 0x4a24e0
mov eax, dword [ebp - 0x7748]
cmp eax, 3
jne 0x4a246f
push 0x41
lea eax, [ebp - 0xf4]
push eax
push 0
push 0x20
lea eax, [ebp - 0x7744]
push eax
call fcn.0048df10
jmp 0x4a24b2
cmp eax, 1
je 0x4a2495
cmp eax, 2
je 0x4a248e
push 0x41
push 0x510964
lea eax, [ebp - 0xf4]
push eax
call fcn.0048e710
jmp 0x4a24b2
mov eax, str._08X
jmp 0x4a249a
mov eax, str._04X
push dword [ebp - 0x7744]
push eax
push 0x41
lea eax, [ebp - 0xf4]
push eax
call fcn.004028e0
add esp, 0x10
push 0x1400
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0x5e18]
push eax
call fcn.0048e6d0
push 0x1400
push 0x510978
lea eax, [ebp - 0x5e18]
push eax
call fcn.0048e6d0
push 0x1400
lea eax, [ebp - 0x87ec]
push eax
lea eax, [ebp - 0x5e18]
push eax
call fcn.0048e6d0
lea eax, [ebp - 0x5e18]
push eax
push str._s_r_n
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0x10
inc edi
cmp edi, dword [ebp - 0x8828]
mov esi, dword [ebp - 0x87f4]
jb 0x4a21a6
cmp byte [ebp - 0x4fc], 0
je 0x4a28ef
push 0xa
lea eax, [ebp - 0x70]
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
call fcn.004f73fe
push 0xa
lea eax, [ebp - 0xb0]
push eax
push dword [ebp - 0x20]
push dword [ebp - 0x24]
call fcn.004f73fe
add esp, 0x20
cmp byte [ebp - 0x87ee], 0
je 0x4a2578
push 0x510904
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
push 0x51098c
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
xor eax, eax
mov word [ebp - 0x2f4], ax
mov word [ebp - 0x4f4], ax
cmp byte [ebp - 0x4f9], al
je 0x4a2620
lea esi, [ebp - 0x4f4]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a25b1
sub esi, ecx
sar esi, 1
push 0x1aa
call fcn.00488530
push eax
push str.___14s
push 0x100
lea eax, [ebp - 0x4f4]
lea eax, [eax + esi*2]
push eax
call fcn.004028e0
add esp, 0x10
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a25f0
sub ecx, edx
sar ecx, 1
push 0x50b8c4
push str.___14s
push 0x100
lea eax, [ebp - 0x2f4]
lea eax, [eax + ecx*2]
push eax
call fcn.004028e0
add esp, 0x10
cmp byte [ebp - 0x4fb], 0
je 0x4a26a1
lea esi, [ebp - 0x4f4]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a2636
sub esi, ecx
sar esi, 1
push 0x6f
call fcn.00488530
push eax
push str._12s
push 0x100
lea eax, [ebp - 0x4f4]
lea eax, [eax + esi*2]
push eax
call fcn.004028e0
add esp, 0x10
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a2672
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.004028e0
add esp, 0x10
cmp byte [ebp - 0x4fa], 0
je 0x4a2725
lea esi, [ebp - 0x4f4]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4a26b7
sub esi, ecx
sar esi, 1
push 0x71
call fcn.00488530
push eax
push str._12s
push 0x100
lea eax, [ebp - 0x4f4]
lea eax, [eax + esi*2]
push eax
call fcn.004028e0
add esp, 0x10
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a26f3
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.004028e0
add esp, 0x10
cmp byte [ebp - 0x4f8], 0
je 0x4a27be
lea ecx, [ebp - 0x4f4]
add ecx, 0xfffffffe
jmp 0x4a2740
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x4a2740
mov edx, dword [0x5109a8]
mov dword [ecx], edx
mov esi, dword [0x5109ac]
mov dword [ecx + 4], esi
mov edi, dword [0x5109b0]
mov dword [ecx + 8], edi
mov eax, dword [0x5109b4]
mov dword [ecx + 0xc], eax
mov eax, dword [0x5109b8]
mov dword [ecx + 0x10], eax
mov ax, word [0x5109bc]
mov word [ecx + 0x14], ax
lea ecx, [ebp - 0x2f4]
add ecx, 0xfffffffe
lea esp, [esp]
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x4a2790
mov dword [ecx], edx
mov dword [ecx + 4], esi
mov dword [ecx + 8], edi
mov eax, dword [0x5109b4]
mov dword [ecx + 0xc], eax
mov eax, dword [0x5109b8]
mov dword [ecx + 0x10], eax
mov ax, word [0x5109bc]
mov word [ecx + 0x14], ax
cmp word [ebp - 0x4f4], 0
jne 0x4a27ee
mov ecx, dword [0x5109c0]
mov dword [ebp - 0x4f4], ecx
mov ax, word [0x5109c4]
mov word [ebp - 0x4f0], ax
mov dword [ebp - 0x2f4], ecx
mov word [ebp - 0x2f0], ax
push 0x559
call fcn.00488530
mov edx, eax
mov esi, eax
lea esp, [esp]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x4a2800
sub edx, esi
lea edi, [ebp - 0x4f4]
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4a2816
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2f4]
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4a2840
sub ecx, edx
sar ecx, 1
push dword [ebp - 0x34]
push 0x50da78
push 0x100
lea eax, [ebp - 0x2f4]
lea eax, [eax + ecx*2]
push eax
call fcn.004028e0
add esp, 0x10
cmp word [ebp - 0x4f4], 0x20
jne 0x4a2890
cmp word [ebp - 0x4f2], 0x20
jne 0x4a2890
mov eax, 0x23
mov word [ebp - 0x4f4], ax
jmp 0x4a2895
mov eax, 0x23
cmp word [ebp - 0x2f4], 0x20
jne 0x4a28b0
cmp word [ebp - 0x2f2], 0x20
jne 0x4a28b0
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 ebx
call fcn.004a3560
add esp, 0x14
cmp byte [ebp - 0x87ee], 0
je 0x4a290c
push str.__b_
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
cmp byte [ebp - 0x87ee], 0
je 0x4a290c
push str.__pre__r_n__body__r_n__html__r_n
push dword [ebp - 0x508]
push ebx
call fcn.004a3560
add esp, 0xc
cmp byte [ebp - 0x50b], 0
je 0x4a29f7
push ebx
call fcn.004f75cf
push ebx
call fcn.004f8f09
push eax
call fcn.004f5741
add esp, 0xc
mov edi, eax
cmp edi, 0xffffffff
je 0x4a29f7
mov byte [ebp - 4], 0xb
lea ecx, [edi + 2]
push ecx
lea ecx, [ebp - 0x8804]
call fcn.00403eb0
mov byte [ebp - 4], 0xc
push 0
push 0
push ebx
call fcn.004f679d
add esp, 0xc
push ebx
push edi
push 1
mov esi, dword [ebp - 0x8804]
push esi
call fcn.004f63b2
add esp, 0x10
mov byte [esi + edi], 0
mov byte [esi + edi + 1], 0
mov eax, dword [ebp - 0x508]
sub eax, 0
je 0x4a29b7
sub eax, 1
je 0x4a29af
sub eax, 1
jne 0x4a29e8
push dword [ebp - 0x8800]
lea ecx, [ebp - 0x24]
call fcn.0044e3d0
mov byte [ebp - 4], 0xd
push dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
push edi
push esi
call fcn.004914f0
jmp 0x4a29d6
push esi
call fcn.004453a0
jmp 0x4a29e8
push dword [ebp - 0x8800]
lea ecx, [ebp - 0x24]
call fcn.0044e3d0
mov byte [ebp - 4], 0xe
push dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
push edi
push esi
call fcn.00491580
push edi
call fcn.004453a0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x24]
call fcn.0041cd10
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x8804]
call fcn.0041cd10
mov dword [ebp - 4], 4
push ebx
call fcn.004f2a17
add esp, 4
cmp byte [ebp - 0x50c], 0
je 0x4a2a5e
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 0x4a2a5e
lea eax, [ebp - 0x150c]
push eax
call fcn.004a2c80
test al, al
jne 0x4a2a5e
lea eax, [ebp - 0x150c]
push eax
push 0x557
call fcn.00488530
push eax
call fcn.004cf640
add esp, 8
cmp byte [0x53898c], 0
jne 0x4a2a88
cmp word [ebp - 0x150c], 0
je 0x4a2a88
lea eax, [ebp - 0x150c]
push eax
call fcn.00478eb0
push eax
mov ecx, 0x55d4d8
call fcn.00442c60
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8854]
call fcn.0043d0f0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x882c]
call fcn.0043d0f0
cmp byte [ebp - 0x87ef], 0
je 0x4a2abe
push dword [0x53890c]
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.004ebbd8
mov esp, ebp
pop ebp
ret