Function at 0x402a80
Capabilities:
Check os version
Get mac address on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x488
mov eax, dword [0x4c4024]
xor eax, esp
mov dword [esp + 0x484], eax
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0x10]
push str.korean
push 0
mov dword [esp + 0x10], esi
call fcn.0047ec5c
add esp, 8
mov dword [0x4c661c], esi
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
mov esi, dword [0x4c4c98]
mov ecx, dword [0x4c4c9c]
mov dword [0x4c6650], 0
cmp esi, ecx
jae 0x402afa
nop dword [eax]
mov eax, dword [esi]
test eax, eax
je 0x402af3
mov eax, dword [eax + 0x1c]
push 1
call eax
mov ecx, dword [0x4c4c9c]
add esi, 4
cmp esi, ecx
jb 0x402ae0
call fcn.0041e880
push 0x90
lea eax, [esp + 0x90]
push 0
push eax
call fcn.0047c720
add esp, 0xc
mov dword [esp + 0x88], 0x94
lea eax, [esp + 0x88]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp eax, 1
jne 0x402b4a
cmp dword [esp + 0x8c], 6
jb 0x402b4a
cmp dword [esp + 0x90], 2
jb 0x402b4a
jmp 0x402b4c
xor eax, eax
mov ecx, edi
mov dword [0x4c65f4], eax
xorps xmm0, xmm0
mov dword [esp + 0x70], 0
movaps xmmword [esp + 0x60], xmm0
mov dword [esp + 0x74], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402b70
sub ecx, edx
push ecx
push edi
lea ecx, [esp + 0x68]
call fcn.0041ecc0
mov ecx, dword [0x4c6668]
cmp ecx, 0x10
jb 0x402bbd
mov eax, dword [0x4c6654]
inc ecx
cmp ecx, 0x1000
jb 0x402bb3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038c8
mov eax, edx
push ecx
push eax
call fcn.0042cca6
add esp, 8
movups xmm0, xmmword [esp + 0x60]
sub esp, 0x18
mov ecx, esp
movups xmmword [0x4c6654], xmm0
movq xmm0, qword [esp + 0x88]
movq qword [0x4c6664], xmm0
xorps xmm0, xmm0
push 4
movups xmmword [ecx], xmm0
push str._t_n_r
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
mov edx, 0x4c6654
lea ecx, [esp + 0x24]
call fcn.004290a0
mov esi, eax
add esp, 0x18
cmp esi, 0x4c6654
je 0x402c96
mov ecx, dword [0x4c6668]
cmp ecx, 0x10
jb 0x402c53
mov eax, dword [0x4c6654]
inc ecx
cmp ecx, 0x1000
jb 0x402c49
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038c8
mov eax, edx
push ecx
push eax
call fcn.0042cca6
add esp, 8
mov dword [0x4c6664], 0
mov dword [0x4c6668], 0xf
mov byte [0x4c6654], 0
movups xmm0, xmmword [esi]
movups xmmword [0x4c6654], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x4c6664], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [esp + 0x20]
cmp ecx, 0x10
jb 0x402ccc
mov edx, dword [esp + 0xc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402cc2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038c8
push ecx
push edx
call fcn.0042cca6
add esp, 8
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0
movups xmmword [ecx], xmm0
push 0x4bcbaf
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 8
movups xmmword [ecx], xmm0
push str.DownTube
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x16
movups xmmword [ecx], xmm0
push str.Softwareuninstalltemp
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
mov edx, reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [esp + 0x54]
call fcn.00429e20
add esp, 0x48
mov ecx, 0x4c66c4
cmp dword [esp + 0x1c], 0
push 1
jbe 0x402d66
push 0x4b99a8
call fcn.004157b0
jmp 0x402dd1
push 0x4b9a40
call fcn.004157b0
sub esp, 0x18
mov ecx, esp
push 0x4c6728
call fcn.0041ea60
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 8
movups xmmword [ecx], xmm0
push str.DownTube
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x16
movups xmmword [ecx], xmm0
push str.Softwareuninstalltemp
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
call fcn.0042a1f0
add esp, 0x48
mov ecx, dword [esp + 0x20]
cmp ecx, 0x10
jb 0x402e07
mov edx, dword [esp + 0xc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402dfd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038cd
push ecx
push edx
call fcn.0042cca6
add esp, 8
push 0x400
lea eax, [esp + 0x8c]
push 0
push eax
call fcn.0047c720
mov edi, dword [sym.imp.IPHLPAPI.DLL_GetAdaptersInfo]
lea eax, [esp + 0x64]
add esp, 0xc
mov dword [esp + 0x58], 4
push eax
push 0
call edi
cmp eax, 0x6f
jne 0x402ea1
push dword [esp + 0x58]
call fcn.0047e300
add esp, 4
mov esi, eax
lea eax, [esp + 0x58]
push eax
push esi
call edi
movzx ecx, byte [esi + 0x199]
movzx eax, byte [esi + 0x196]
push ecx
movzx ecx, byte [esi + 0x198]
push ecx
movzx ecx, byte [esi + 0x197]
push ecx
push eax
movzx eax, byte [esi + 0x195]
push eax
movzx eax, byte [esi + 0x194]
push eax
lea eax, [esp + 0xa0]
push str._0.2X_0.2X_0.2X_0.2X_0.2X_0.2X
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
push 0x288
push esi
call fcn.0042cca6
add esp, 0x28
xorps xmm0, xmm0
mov dword [esp + 0x70], 0
lea ecx, [esp + 0x88]
movaps xmmword [esp + 0x60], xmm0
mov dword [esp + 0x74], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402ec3
sub ecx, edx
lea eax, [esp + 0x88]
push ecx
push eax
lea ecx, [esp + 0x68]
call fcn.0041ecc0
mov ecx, dword [0x4c6708]
cmp ecx, 0x10
jb 0x402f17
mov eax, dword [0x4c66f4]
inc ecx
cmp ecx, 0x1000
jb 0x402f0d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038c8
mov eax, edx
push ecx
push eax
call fcn.0042cca6
add esp, 8
movups xmm0, xmmword [esp + 0x60]
push 0x25
push str.GoogleChromeApplicationchrome.exe
movups xmmword [0x4c66f4], xmm0
mov ecx, 0x4c6998
movq xmm0, qword [esp + 0x78]
movq qword [0x4c6704], xmm0
call fcn.004157b0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0
movups xmmword [ecx], xmm0
push 0x4bcbaf
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 6
movups xmmword [ecx], xmm0
push str.refval
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x16
movups xmmword [ecx], xmm0
push str.SoftwareDownTubedata
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
mov edx, reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [esp + 0xa8]
call fcn.00429e20
mov ecx, dword [esp + 0xb8]
add esp, 0x48
test ecx, ecx
je 0x402fea
cmp dword [esp + 0x74], 0x10
lea eax, [esp + 0x60]
push ecx
cmovae eax, dword [esp + 0x64]
mov ecx, 0x4c66ac
push eax
call fcn.004157b0
mov ecx, dword [esp + 0x74]
cmp ecx, 0x10
jb 0x403020
mov edx, dword [esp + 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403016
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038d2
push ecx
push edx
call fcn.0042cca6
add esp, 8
cmp dword [0x4c6668], 0x10
mov ecx, 0x4c6654
mov edx, dword [0x4c6664]
cmovae ecx, dword [0x4c6654]
cmp edx, 6
jne 0x403119
mov edi, edx
mov esi, str._first
sub edi, 4
jb 0x403061
nop
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x403066
add ecx, 4
add esi, 4
sub edi, 4
jae 0x403050
cmp edi, 0xfffffffc
je 0x40309a
mov al, byte [ecx]
cmp al, byte [esi]
jne 0x403093
cmp edi, 0xfffffffd
je 0x40309a
mov al, byte [ecx + 1]
cmp al, byte [esi + 1]
jne 0x403093
cmp edi, 0xfffffffe
je 0x40309a
mov al, byte [ecx + 2]
cmp al, byte [esi + 2]
jne 0x403093
cmp edi, 0xffffffff
je 0x40309a
mov al, byte [ecx + 3]
cmp al, byte [esi + 3]
je 0x40309a
sbb eax, eax
or eax, 1
jmp 0x40309c
xor eax, eax
test eax, eax
jne 0x403119
sub esp, 0x18
mov esi, esp
push eax
call fcn.004856b9
add esp, 4
mov edx, eax
mov ecx, esi
call fcn.00429a40
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 5
movups xmmword [ecx], xmm0
push 0x4b9a7c
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x16
movups xmmword [ecx], xmm0
push str.SoftwareDownTubedata
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
call fcn.0042a1f0
add esp, 0x48
mov ecx, 1
call fcn.00409200
mov edx, dword [0x4c6664]
cmp dword [0x4c6668], 0x10
mov ecx, 0x4c6654
cmovae ecx, dword [0x4c6654]
cmp edx, 0x17
jne 0x40319d
mov esi, str._first_only_updatecheck
sub edx, 4
jb 0x403151
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x403156
add ecx, 4
add esi, 4
sub edx, 4
jae 0x403140
cmp edx, 0xfffffffc
je 0x40318a
mov al, byte [ecx]
cmp al, byte [esi]
jne 0x403183
cmp edx, 0xfffffffd
je 0x40318a
mov al, byte [ecx + 1]
cmp al, byte [esi + 1]
jne 0x403183
cmp edx, 0xfffffffe
je 0x40318a
mov al, byte [ecx + 2]
cmp al, byte [esi + 2]
jne 0x403183
cmp edx, 0xffffffff
je 0x40318a
mov al, byte [ecx + 3]
cmp al, byte [esi + 3]
je 0x40318a
sbb eax, eax
or eax, 1
jmp 0x40318c
xor eax, eax
test eax, eax
jne 0x40319d
lea ecx, [eax + 1]
call fcn.00409200
jmp 0x4038a0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 1
movups xmmword [ecx], xmm0
push 0x4b9a9c
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 2
movups xmmword [ecx], xmm0
push 0x4b9aa0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
lea eax, [esp + 0x3c]
push eax
call fcn.00401e40
sub esp, 0x18
lea eax, [esp + 0x24]
mov ecx, esp
push eax
call fcn.0041ea60
call fcn.004298c0
add esp, 0x18
test eax, eax
je 0x4032d2
sub esp, 0x18
lea eax, [esp + 0x24]
mov ecx, esp
push eax
call fcn.0041ea60
call fcn.004299a0
lea ecx, [esp + 0x78]
lea edx, [eax + 1]
call fcn.00429a40
cmp dword [esp + 0x8c], 0x10
lea edx, [esp + 0x78]
mov esi, esp
xorps xmm0, xmm0
cmovae edx, dword [esp + 0x78]
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403260
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 2
movups xmmword [ecx], xmm0
push 0x4b9aa0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
call fcn.00401d20
mov ecx, dword [esp + 0x74]
cmp ecx, 0x10
jb 0x4032d2
mov edx, dword [esp + 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4032c8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038d7
push ecx
push edx
call fcn.0042cca6
add esp, 8
mov ecx, dword [esp + 0x20]
cmp ecx, 0x10
jb 0x403308
mov edx, dword [esp + 0xc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4032fe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038dc
push ecx
push edx
call fcn.0042cca6
add esp, 8
cmp dword [0x4c6668], 0x10
mov ecx, 0x4c6654
mov esi, dword [0x4c6664]
cmovae ecx, dword [0x4c6654]
cmp esi, 4
jne 0x4035c4
mov edx, str._sch
sub esi, esi
jb 0x403344
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x403349
add ecx, 4
add edx, 4
sub esi, 4
jae 0x403333
cmp esi, 0xfffffffc
je 0x40337d
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x403376
cmp esi, 0xfffffffd
je 0x40337d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x403376
cmp esi, 0xfffffffe
je 0x40337d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x403376
cmp esi, 0xffffffff
je 0x40337d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x40337d
sbb eax, eax
or eax, 1
jmp 0x40337f
xor eax, eax
test eax, eax
jne 0x4035c4
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push eax
movups xmmword [ecx], xmm0
push 0x4bcbaf
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 3
movups xmmword [ecx], xmm0
push 0x4b9aac
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x16
movups xmmword [ecx], xmm0
push str.SoftwareDownTubedata
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.0041ecc0
mov edx, reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [esp + 0xa8]
call fcn.00429e20
add esp, 0x48
cmp dword [esp + 0x70], 0
jbe 0x403529
push str.DownTubeMutex
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [0x4c6614], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x403529
push str.DownTubeWAIT
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push 0x3a98
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 1
call fcn.00409200
cmp eax, 1
je 0x403529
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4c4c18
call fcn.0041ea60
mov edx, 3
mov ecx, esi
call fcn.00410910
add esp, 0x18
lea ecx, [esp + 0x24]
mov edx, 1
call fcn.0040c030
mov ecx, dword [esp + 0x38]
add esp, 0x18
mov esi, dword [eax + 0x10]
cmp ecx, 0x10
jb 0x4034d7
mov edx, dword [esp + 0xc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4034cd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038e1
push ecx
push edx
call fcn.0042cca6
add esp, 8
mov ecx, 0x4c666c
push 1
test esi, esi
je 0x4034ee
push 0x4b9998
call fcn.004157b0
jmp 0x4034fd
push 0x4b999c
call fcn.004157b0
call fcn.0040edd0
cmp dword [0x4c4c44], 0x10
mov ecx, 0x4c4c30
mov edx, dword [0x4c4c40]
cmovae ecx, dword [0x4c4c30]
push 1
push 0x4b999c
call fcn.00416f00
add esp, 8
test al, al
je 0x403579
mov ecx, dword [esp + 0x74]
cmp ecx, 0x10
jb 0x40355f
mov edx, dword [esp + 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403555
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038e6
push ecx
push edx
call fcn.0042cca6
add esp, 8
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0xf
mov byte [esp + 0x60], 0
jmp 0x4038a0
mov ecx, dword [esp + 0x74]
cmp ecx, 0x10
jb 0x4035af
mov edx, dword [esp + 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4035a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4038e6
push ecx
push edx
call fcn.0042cca6
add esp, 8
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0xf
mov byte [esp + 0x60], 0
lea eax, [esp + 0x58]
mov dword [esp + 0x58], 8
push eax
mov dword [esp + 0x60], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov edi, dword [esp + 8]
mov esi, dword [sym.imp.USER32.dll_LoadIconA]
push 0x6b
push edi
mov dword [esp + 0x30], 0x30
mov dword [esp + 0x34], 3
mov dword [esp + 0x38], 0x4038f0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], edi
call esi
push 0x7f00
push 0
mov dword [esp + 0x48], eax
call dword [sym.imp.USER32.dll_LoadCursorA]
push 0x814f3b
mov dword [esp + 0x48], eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
push 0x6c
push dword [esp + 0x40]
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], str.DownTube
call esi
mov esi, dword [sym.imp.USER32.dll_RegisterClassExA]
mov dword [esp + 0x54], eax
lea eax, [esp + 0x28]
push eax
call esi
lea eax, [esp + 0x28]
mov dword [esp + 0x30], 0x404730
push eax
mov dword [esp + 0x54], str.SUB1
call esi
cmp dword [0x4c6668], 0x10
mov ecx, 0x4c6654
mov esi, dword [0x4c6664]
cmovae ecx, dword [0x4c6654]
cmp esi, 4
jne 0x403735
mov edx, str._sch
sub esi, esi
jb 0x4036c1
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4036c6
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4036b0
cmp esi, 0xfffffffc
je 0x4036fa
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4036f3
cmp esi, 0xfffffffd
je 0x4036fa
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4036f3
cmp esi, 0xfffffffe
je 0x4036fa
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4036f3
cmp esi, 0xffffffff
je 0x4036fa
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x4036fa
sbb eax, eax
or eax, 1
jmp 0x4036fc
xor eax, eax
test eax, eax
jne 0x403735
push eax
push edi
push eax
push eax
push eax
push eax
push 0x2710
push 0x2710
push 0x86080000
push str.DownTube
push str.DownTube
push eax
call dword [sym.imp.USER32.dll_CreateWindowExA]
test eax, eax
je 0x4038b0
mov dword [0x4c6618], eax
jmp 0x40378f
push 0
push edi
push 0
push 0
push 0x247
push 0x1c2
push SysReAllocString
push SysReAllocString
push 0x86080000
push str.DownTube
push str.DownTube
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, eax
test esi, esi
je 0x4038b0
mov ecx, esi
mov dword [0x4c6618], esi
call fcn.0042a480
push dword [ebp + 0x14]
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_UpdateWindow]
push 0x6d
push edi
call dword [sym.imp.USER32.dll_LoadAcceleratorsA]
mov esi, dword [sym.imp.USER32.dll_GetMessageA]
push 0
push 0
mov dword [esp + 0x10], eax
lea eax, [esp + 0x14]
push 0
push eax
call esi
test eax, eax
je 0x403814
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
nop dword [eax]
cmp eax, 0xffffffff
je 0x403803
lea eax, [esp + 0xc]
push eax
push dword [0x4c6610]
call dword [sym.imp.USER32.dll_IsDialogMessageA]
test eax, eax
jne 0x403803
lea eax, [esp + 0xc]
push eax
push dword [esp + 0xc]
push dword [esp + 0x14]
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
test eax, eax
jne 0x403803
lea eax, [esp + 0xc]
push eax
call edi
lea eax, [esp + 0xc]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
push 0
push 0
push 0
lea eax, [esp + 0x18]
push eax
call esi
test eax, eax
jne 0x4037c0
push dword [0x4c5934]
mov esi, dword [sym.imp.USER32.dll_UnregisterClassA]
push str.AtlAxWin140
call esi
push dword [0x4c5934]
push 0x4bcba0
call esi
mov esi, dword [0x4c6650]
test esi, esi
je 0x403866
cmp dword [esi], 0
je 0x403866
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x403850
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [esi + 0x20]
push 0
mov dword [esi + 0x10], 0
call eax
add esi, 0x24
cmp dword [esi], 0
jne 0x403843
mov esi, dword [0x4c4c98]
mov ecx, dword [0x4c4c9c]
cmp esi, ecx
jae 0x403890
mov eax, dword [esi]
test eax, eax
je 0x403889
mov eax, dword [eax + 0x1c]
push 0
call eax
mov ecx, dword [0x4c4c9c]
add esi, 4
cmp esi, ecx
jb 0x403876
mov ecx, 0x4c6624
call fcn.0041ee10
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [0x4c6614]
test eax, eax
je 0x4038b0
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [esp + 0x48c]
xor eax, eax
pop edi
pop esi
xor ecx, esp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret 0x10
call fcn.0047e707
call fcn.0047e707
call fcn.0047e707
call fcn.0047e707
call fcn.0047e707
call fcn.0047e707
call fcn.0047e707
int3