Function at 0x436ad0
Capabilities:
Encode data using base64
Encode data using xor
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56147a
mov eax, dword fs:[0]
push eax
sub esp, 0x410
mov eax, dword [0x5be26c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
xor eax, eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 7
mov word [ebp - 0x128], ax
push 3
push 0x575000
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 1
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], 7
mov word [ebp - 0x68], ax
call fcn.00421290
lea eax, [ebp - 0x41c]
mov byte [ebp - 4], 2
push eax
call fcn.004278c0
mov ecx, eax
call fcn.00426a20
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 3
push ecx
lea ecx, [ebp - 0x68]
push ecx
mov ecx, dword [eax]
call fcn.00506c40
mov ecx, dword [ebp - 0x418]
or esi, 0xffffffff
mov dword [ebp - 0x36c], ecx
test ecx, ecx
je 0x436ba5
mov eax, esi
lock xadd dword [ecx + 4], eax
jne 0x436ba5
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x36c]
mov eax, esi
lock xadd dword [ecx + 8], eax
jne 0x436ba5
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x54]
mov byte [ebp - 4], 1
cmp edx, 8
jb 0x436be3
mov ecx, dword [ebp - 0x68]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x436bd9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x438755
push edx
push ecx
call fcn.0046c2cf
add esp, 8
xor eax, eax
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 7
mov word [ebp - 0x68], ax
cmp dword [ebp - 0x118], eax
jne 0x436d50
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x43875a
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x374], eax
mov eax, 0x5726b4
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x374]
test eax, 0xffff0000
jne 0x436c43
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x436c4f
push 0
push 0x5726b4
call fcn.0041f550
push 9
push str.login_url
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 5
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 0xf
mov byte [ebp - 0x110], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x374]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x38c]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 7
push eax
call fcn.0040c150
mov edx, dword [ebp - 0x38c]
mov eax, esi
mov byte [ebp - 4], 6
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x436cd4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xfc]
mov byte [ebp - 4], 5
cmp edx, 0x10
jb 0x436d12
mov ecx, dword [ebp - 0x110]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x436d08
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x438764
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x374]
mov eax, esi
mov dword [ebp - 0x100], 0
add edx, 0xfffffff0
mov dword [ebp - 0xfc], 0xf
mov byte [ebp - 0x110], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x436d9f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x436d9f
cmp dword [ebp - 0x114], 8
lea edx, [ebp - 0x128]
lea eax, [edi + 0x68]
cmovae edx, dword [ebp - 0x128]
test edx, edx
jne 0x436d6f
xor ecx, ecx
jmp 0x436d96
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x38c], eax
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x436d80
sub ecx, dword [ebp - 0x38c]
lea eax, [edi + 0x68]
sar ecx, 1
push ecx
push edx
mov ecx, eax
call fcn.0041f550
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x438769
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x378], eax
mov eax, 0x5726b4
mov byte [ebp - 4], 8
shr eax, 0x10
lea ecx, [ebp - 0x378]
mov dword [ebp - 0x358], eax
test eax, eax
jne 0x436dea
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x436df6
push 0
push 0x5726b4
call fcn.0041f550
mov byte [ebp - 0x20], 9
xor edx, edx
mov byte [ebp - 0x1f], 6
mov esi, 0xf
mov byte [ebp - 0x1e], 2
mov byte [ebp - 0x1d], 0x11
mov byte [ebp - 0x1c], 0x2b
mov byte [ebp - 0x1b], 0xd
mov byte [ebp - 0x1a], 0x10
mov byte [ebp - 0x19], 3
mov byte [ebp - 0x18], 8
mov byte [ebp - 0x17], 0x1d
mov byte [ebp - 0x16], 0x19
mov byte [ebp - 0x15], 0x1d
mov byte [ebp - 0x14], 0x79
mov al, byte [ebp - 0x20]
mov byte [ebp - 4], 9
mov dword [ebp - 0x3bc], edx
nop
mov al, byte [ebp + edx - 0x20]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0x359], al
cmp ecx, esi
mov eax, 0x5695eb6d
mov edx, 0x4090b12e
cmovae ecx, esi
shl ecx, 2
call fcn.0046c590
mov edx, dword [ebp - 0x3bc]
and al, 0xf
lea ecx, [edx + 0x6d]
xor al, cl
xor al, byte [ebp - 0x359]
mov byte [ebp + edx - 0x20], al
inc edx
mov dword [ebp - 0x3bc], edx
cmp edx, 0xd
jb 0x436e40
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x40], 0
lea edx, [ecx + 1]
mov byte [ebp - 0x50], 0
or esi, 0xffffffff
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436ea0
sub ecx, edx
lea eax, [ebp - 0x20]
push ecx
push eax
lea ecx, [ebp - 0x50]
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x378]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x3d0]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
mov ecx, edi
mov byte [ebp - 4], 0xb
call fcn.0040c150
mov edx, dword [ebp - 0x3d0]
mov eax, esi
mov byte [ebp - 4], 0xa
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x436f06
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x3c]
mov byte [ebp - 4], 9
cmp edx, 0x10
jb 0x436f3e
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x436f34
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x438773
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x378]
mov eax, esi
mov dword [ebp - 0x40], 0
add edx, 0xfffffff0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x436f71
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x438778
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x37c], eax
cmp dword [ebp - 0x358], 0
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0xc
jne 0x436fb3
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x436fbf
push 0
push 0x5726b4
call fcn.0041f550
push 0xd
push str.kefu_page_url
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x37c]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x3cc]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x74]
mov byte [ebp - 4], 0xf
call fcn.0040c150
mov edx, dword [ebp - 0x3cc]
mov eax, esi
mov byte [ebp - 4], 0xe
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437035
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov byte [ebp - 4], 0xd
cmp edx, 0x10
jb 0x43706d
mov ecx, dword [ebp - 0x38]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x437063
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x438782
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x37c]
mov eax, esi
mov dword [ebp - 0x28], 0
add edx, 0xfffffff0
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4370a0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x438787
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x380], eax
cmp dword [ebp - 0x358], 0
lea ecx, [ebp - 0x380]
mov byte [ebp - 4], 0x10
jne 0x4370e2
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x4370ee
push 0
push 0x5726b4
call fcn.0041f550
push 0xe
push str.index_page_url
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x11
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x380]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 0x3c8]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x70]
mov byte [ebp - 4], 0x13
call fcn.0040c150
mov edx, dword [ebp - 0x3c8]
mov eax, esi
mov byte [ebp - 4], 0x12
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437173
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xcc]
mov byte [ebp - 4], 0x11
cmp edx, 0x10
jb 0x4371b1
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4371a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x438791
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x380]
mov eax, esi
mov dword [ebp - 0xd0], 0
add edx, 0xfffffff0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4371ed
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x438796
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x384], eax
cmp dword [ebp - 0x358], 0
lea ecx, [ebp - 0x384]
mov byte [ebp - 4], 0x14
jne 0x43722f
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x43723b
push 0
push 0x5726b4
call fcn.0041f550
push 0x11
push str.charge_url_format
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 0x15
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x384]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x3c4]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x78]
mov byte [ebp - 4], 0x17
call fcn.0040c150
mov edx, dword [ebp - 0x3c4]
mov eax, esi
mov byte [ebp - 4], 0x16
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4372c0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xb4]
mov byte [ebp - 4], 0x15
cmp edx, 0x10
jb 0x4372fe
mov ecx, dword [ebp - 0xc8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4372f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4387a0
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x384]
mov eax, esi
mov dword [ebp - 0xb8], 0
add edx, 0xfffffff0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43733a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x4387a5
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x388], eax
cmp dword [ebp - 0x358], 0
lea ecx, [ebp - 0x388]
mov byte [ebp - 4], 0x18
jne 0x43737c
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x437388
push 0
push 0x5726b4
call fcn.0041f550
push 0xf
push str.site_url_format
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x19
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x388]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0xb0]
push eax
lea eax, [ebp - 0x3c0]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x6c]
mov byte [ebp - 4], 0x1b
call fcn.0040c150
mov edx, dword [ebp - 0x3c0]
mov eax, esi
mov byte [ebp - 4], 0x1a
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43740d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x9c]
mov byte [ebp - 4], 0x19
cmp edx, 0x10
jb 0x43744b
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x437441
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4387af
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x388]
mov eax, esi
mov dword [ebp - 0xa0], 0
add edx, 0xfffffff0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437487
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x4387b4
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x364], eax
cmp dword [ebp - 0x358], 0
lea ecx, [ebp - 0x364]
mov byte [ebp - 4], 0x1c
jne 0x4374c9
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x4374d5
push 0
push 0x5726b4
call fcn.0041f550
push 0xf
push str.uninst_open_url
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x364]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x3f0]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x7c]
mov byte [ebp - 4], 0x1f
call fcn.0040c150
mov edx, dword [ebp - 0x3f0]
mov eax, esi
mov byte [ebp - 4], 0x1e
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43755a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x84]
mov byte [ebp - 4], 0x1d
cmp edx, 0x10
jb 0x437598
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43758e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4387be
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x364]
mov eax, esi
mov dword [ebp - 0x88], 0
add edx, 0xfffffff0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4375d4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x4387c3
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x370], eax
cmp dword [ebp - 0x358], 0
lea ecx, [ebp - 0x370]
mov byte [ebp - 4], 0x20
jne 0x437616
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x437622
push 0
push 0x5726b4
call fcn.0041f550
push 0xc
push str.pop_tray_url
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x370]
mov byte [ebp - 4], 0x22
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x400]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x80]
mov byte [ebp - 4], 0x23
call fcn.0040c150
mov edx, dword [ebp - 0x400]
mov eax, esi
mov byte [ebp - 4], 0x22
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43769b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x6c]
mov byte [ebp - 4], 0x21
cmp edx, 0x10
jb 0x4376d3
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4376c9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4387cd
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x370]
mov eax, esi
mov dword [ebp - 0x70], 0
add edx, 0xfffffff0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437706
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x4387d2
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x368], eax
cmp dword [ebp - 0x358], 0
lea ecx, [ebp - 0x368]
mov byte [ebp - 4], 0x24
jne 0x437748
mov eax, 0x5726b4
movzx eax, ax
push eax
call fcn.00433c90
jmp 0x437754
push 0
push 0x5726b4
call fcn.0041f550
push 0xd
push str.pop_tray_word
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x25
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe4], 0xf
mov byte [ebp - 0xf8], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x368]
mov byte [ebp - 4], 0x26
push eax
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0x3fc]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x84]
mov byte [ebp - 4], 0x27
call fcn.0040c150
mov edx, dword [ebp - 0x3fc]
mov eax, esi
mov byte [ebp - 4], 0x26
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4377dc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xe4]
mov byte [ebp - 4], 0x25
cmp edx, 0x10
jb 0x43781a
mov ecx, dword [ebp - 0xf8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x437810
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4387dc
push edx
push ecx
call fcn.0046c2cf
add esp, 8
mov edx, dword [ebp - 0x368]
mov eax, esi
mov dword [ebp - 0xe8], 0
add edx, 0xfffffff0
mov dword [ebp - 0xe4], 0xf
mov byte [ebp - 0xf8], 0
mov byte [ebp - 4], 1
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437856
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x13
push str.startmenu_no_uninst
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x12c], 0xf
mov byte [ebp - 0x140], 0
call fcn.004211a0
push 0
lea eax, [ebp - 0x140]
mov byte [ebp - 4], 0x28
push eax
lea ecx, [ebp + 8]
call fcn.00504210
mov edx, dword [ebp - 0x12c]
mov dword [edi + 0xd4], eax
mov byte [ebp - 4], 1
cmp edx, 0x10
jb 0x4378dc
mov ecx, dword [ebp - 0x140]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4378d2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4387e1
push edx
push ecx
call fcn.0046c2cf
add esp, 8
push 0x5726b4
lea ecx, [ebp - 0x3b8]
call fcn.0040ad40
push 0xd
push str.tray_icon_tip
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x29
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0xf
mov byte [ebp - 0x260], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x3b8]
mov byte [ebp - 4], 0x2a
push eax
lea eax, [ebp - 0x260]
push eax
lea eax, [ebp - 0x3f8]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x64]
mov byte [ebp - 4], 0x2b
call fcn.0040c150
mov edx, dword [ebp - 0x3f8]
mov eax, esi
mov byte [ebp - 4], 0x2a
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437971
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x260]
call fcn.0040bb80
mov edx, dword [ebp - 0x3b8]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43799d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x3b4]
call fcn.0040ad40
push 0xb
push str.pattern_str
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x2c
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0xf
mov byte [ebp - 0x248], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x3b4]
mov byte [ebp - 4], 0x2d
push eax
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x3f4]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x90]
mov byte [ebp - 4], 0x2e
call fcn.0040c150
mov edx, dword [ebp - 0x3f4]
mov eax, esi
mov byte [ebp - 4], 0x2d
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437a35
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x248]
call fcn.0040bb80
mov edx, dword [ebp - 0x3b4]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437a61
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x3b0]
call fcn.0040ad40
push 0xc
push str.silence_inst
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0xf
mov byte [ebp - 0x230], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x3b0]
mov byte [ebp - 4], 0x30
push eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x3ec]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x88]
mov byte [ebp - 4], 0x31
call fcn.0040c150
mov edx, dword [ebp - 0x3ec]
mov eax, esi
mov byte [ebp - 4], 0x30
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437af9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x230]
call fcn.0040bb80
mov edx, dword [ebp - 0x3b0]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437b25
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x3ac]
call fcn.0040ad40
push 0x16
push str.run_after_silence_inst
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x32
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1ec], 0xf
mov byte [ebp - 0x200], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x3ac]
mov byte [ebp - 4], 0x33
push eax
lea eax, [ebp - 0x200]
push eax
lea eax, [ebp - 0x3e8]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x50]
mov byte [ebp - 4], 0x34
call fcn.0040c150
mov edx, dword [ebp - 0x3e8]
mov eax, esi
mov byte [ebp - 4], 0x33
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437bba
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x200]
call fcn.0040bb80
mov edx, dword [ebp - 0x3ac]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437be6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0xc
push str.install_tray
lea ecx, [ebp - 0x1e8]
mov dword [ebp - 0x1d8], 0
mov dword [ebp - 0x1d4], 0xf
mov byte [ebp - 0x1e8], 0
call fcn.004211a0
push 0
lea eax, [ebp - 0x1e8]
mov byte [ebp - 4], 0x35
push eax
lea ecx, [ebp + 8]
call fcn.00504210
lea ecx, [ebp - 0x1e8]
mov dword [edi + 0xc8], eax
mov byte [ebp - 4], 1
call fcn.0040bb80
push 0x18
push str.delay_install_extra_days
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x268], 0
mov dword [ebp - 0x264], 0xf
mov byte [ebp - 0x278], 0
call fcn.004211a0
push 0
lea eax, [ebp - 0x278]
mov byte [ebp - 4], 0x36
push eax
lea ecx, [ebp + 8]
call fcn.00504210
lea ecx, [ebp - 0x278]
mov dword [edi + 0xcc], eax
mov byte [ebp - 4], 1
call fcn.0040bb80
push 0x5726b4
lea ecx, [ebp - 0x360]
call fcn.0040ad40
push 0x11
push str.install_open_text
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0x37
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0xf
mov byte [ebp - 0x290], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x360]
mov byte [ebp - 4], 0x38
push eax
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x3e4]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x8c]
mov byte [ebp - 4], 0x39
call fcn.0040c150
mov edx, dword [ebp - 0x3e4]
mov eax, esi
mov byte [ebp - 4], 0x38
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437d2c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x290]
call fcn.0040bb80
mov edx, dword [ebp - 0x360]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437d58
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x13
push str.install_open_select
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0xf
mov byte [ebp - 0x1b8], 0
call fcn.004211a0
push 0
lea eax, [ebp - 0x1b8]
mov byte [ebp - 4], 0x3a
push eax
lea ecx, [ebp + 8]
call fcn.00504210
lea ecx, [ebp - 0x1b8]
mov dword [edi + 0xd0], eax
mov byte [ebp - 4], 1
call fcn.0040bb80
push 0x12
push str.install_show_close
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x208], 0
mov dword [ebp - 0x204], 0xf
mov byte [ebp - 0x218], 0
call fcn.004211a0
push 1
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x3b
push eax
lea ecx, [ebp + 8]
call fcn.00504210
lea ecx, [ebp - 0x218]
mov dword [edi + 0xd8], eax
mov byte [ebp - 4], 1
call fcn.0040bb80
push 0xe
push str.pepflashplayer
lea ecx, [ebp - 0x1d0]
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1bc], 0xf
mov byte [ebp - 0x1d0], 0
call fcn.004211a0
push 0
lea eax, [ebp - 0x1d0]
mov byte [ebp - 4], 0x3c
push eax
lea ecx, [ebp + 8]
call fcn.00504210
lea ecx, [ebp - 0x1d0]
mov dword [edi + 0xc4], eax
mov byte [ebp - 4], 1
call fcn.0040bb80
push 0x17
push str.exit_when_close_playwnd
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
call fcn.004211a0
push 0
lea eax, [ebp - 0x1a0]
mov byte [ebp - 4], 0x3d
push eax
lea ecx, [ebp + 8]
call fcn.00504210
lea ecx, [ebp - 0x1a0]
mov dword [edi + 0xdc], eax
mov byte [ebp - 4], 1
call fcn.0040bb80
call fcn.00418ed0
mov ecx, eax
test ecx, ecx
je 0x4387e6
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x354], eax
mov eax, 0x574bf8
mov byte [ebp - 4], 0x3e
test eax, 0xffff0000
jne 0x437ef4
movzx eax, ax
lea ecx, [ebp - 0x354]
push eax
call fcn.00433c90
jmp 0x437f63
push 0
push 0
push 0xffffffffffffffff
push 0x574bf8
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
dec eax
lea ecx, [ebp - 0x354]
mov dword [ebp - 0x360], eax
test eax, eax
jle 0x437f5e
push eax
call fcn.00438cc0
push dword [ebp - 0x360]
push eax
push 0xffffffffffffffff
push 0x574bf8
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x354]
mov ecx, dword [ebp - 0x360]
cmp ecx, dword [eax - 8]
jg 0x4387f0
mov dword [eax - 0xc], ecx
xor edx, edx
mov eax, dword [ebp - 0x354]
mov word [eax + ecx*2], dx
jmp 0x437f63
call fcn.00414330
push 0x11
push str.NotCreateDeskIcon
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 4], 0x3f
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x294], 0xf
mov byte [ebp - 0x2a8], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x354]
mov byte [ebp - 4], 0x40
push eax
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x3dc]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 4]
mov byte [ebp - 4], 0x41
call fcn.0040c150
mov edx, dword [ebp - 0x3dc]
mov eax, esi
mov byte [ebp - 4], 0x40
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x437fe8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x2a8]
call fcn.0040bb80
mov edx, dword [ebp - 0x354]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x438014
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x572ba0
lea ecx, [ebp - 0x3a8]
call fcn.0040ad40
push 0xf
push str.IsUserNewKernel
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x42
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x174], 0xf
mov byte [ebp - 0x188], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x3a8]
mov byte [ebp - 4], 0x43
push eax
lea eax, [ebp - 0x188]
push eax
lea eax, [ebp - 0x3d8]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 8]
mov byte [ebp - 4], 0x44
call fcn.0040c150
mov edx, dword [ebp - 0x3d8]
mov eax, esi
mov byte [ebp - 4], 0x43
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4380a9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x188]
call fcn.0040bb80
mov edx, dword [ebp - 0x3a8]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4380d5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x572ba0
lea ecx, [ebp - 0x3a4]
call fcn.0040ad40
push 0xc
push str.IsPackAllCEF
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x45
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 0xf
mov byte [ebp - 0x170], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x3a4]
mov byte [ebp - 4], 0x46
push eax
lea eax, [ebp - 0x170]
push eax
lea eax, [ebp - 0x3e0]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0xc]
mov byte [ebp - 4], 0x47
call fcn.0040c150
mov edx, dword [ebp - 0x3e0]
mov eax, esi
mov byte [ebp - 4], 0x46
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43816a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x170]
call fcn.0040bb80
mov edx, dword [ebp - 0x3a4]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x438196
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [0x5be144]
lea ecx, [ebp - 0x3a0]
call fcn.0040ad40
push 0xd
push str.platform_type
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0x48
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x144], 0xf
mov byte [ebp - 0x158], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x3a0]
mov byte [ebp - 4], 0x49
push eax
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x404]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
lea ecx, [edi + 0x94]
mov byte [ebp - 4], 0x4a
push eax
call fcn.0040c150
mov edx, dword [ebp - 0x404]
mov eax, esi
mov byte [ebp - 4], 0x49
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43822f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x158]
call fcn.0040bb80
mov edx, dword [ebp - 0x3a0]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43825b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x39c]
call fcn.0040ad40
push 7
push str.res_url
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0x4b
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2ac], 0xf
mov byte [ebp - 0x2c0], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x39c]
mov byte [ebp - 4], 0x4c
push eax
lea eax, [ebp - 0x2c0]
push eax
lea eax, [ebp - 0x408]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x98]
mov byte [ebp - 4], 0x4d
call fcn.0040c150
mov edx, dword [ebp - 0x408]
mov eax, esi
mov byte [ebp - 4], 0x4c
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4382f3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x2c0]
call fcn.0040bb80
mov edx, dword [ebp - 0x39c]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43831f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x398]
call fcn.0040ad40
push 6
push str.ui_url
lea ecx, [ebp - 0x2d8]
mov byte [ebp - 4], 0x4e
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 0xf
mov byte [ebp - 0x2d8], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x398]
mov byte [ebp - 4], 0x4f
push eax
lea eax, [ebp - 0x2d8]
push eax
lea eax, [ebp - 0x40c]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0x9c]
mov byte [ebp - 4], 0x50
call fcn.0040c150
mov edx, dword [ebp - 0x40c]
mov eax, esi
mov byte [ebp - 4], 0x4f
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4383b7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x2d8]
call fcn.0040bb80
mov edx, dword [ebp - 0x398]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4383e3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x390]
call fcn.0040ad40
push 0x15
push str.uninst_third_part_url
lea ecx, [ebp - 0x2f0]
mov byte [ebp - 4], 0x51
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x2dc], 0xf
mov byte [ebp - 0x2f0], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x390]
mov byte [ebp - 4], 0x52
push eax
lea eax, [ebp - 0x2f0]
push eax
lea eax, [ebp - 0x410]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0xa0]
mov byte [ebp - 4], 0x53
call fcn.0040c150
mov edx, dword [ebp - 0x410]
mov eax, esi
mov byte [ebp - 4], 0x52
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43847b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x2f0]
call fcn.0040bb80
mov edx, dword [ebp - 0x390]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4384a7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x394]
call fcn.0040ad40
push 0xb
push str.encrypt_key
lea ecx, [ebp - 0x308]
mov byte [ebp - 4], 0x54
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0xf
mov byte [ebp - 0x308], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x394]
mov byte [ebp - 4], 0x55
push eax
lea eax, [ebp - 0x308]
push eax
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0xa4]
mov byte [ebp - 4], 0x56
call fcn.0040c150
mov edx, dword [ebp - 0x414]
mov eax, esi
mov byte [ebp - 4], 0x55
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43853f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x308]
call fcn.0040bb80
mov edx, dword [ebp - 0x394]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43856b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x5726b4
lea ecx, [ebp - 0x36c]
call fcn.0040ad40
push 0xc
push str.encrypt_type
lea ecx, [ebp - 0x320]
mov byte [ebp - 4], 0x57
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x30c], 0xf
mov byte [ebp - 0x320], 0
call fcn.004211a0
push 0xfde9
lea eax, [ebp - 0x36c]
mov byte [ebp - 4], 0x58
push eax
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x3d4]
push eax
lea ecx, [ebp + 8]
call fcn.005046f0
push eax
lea ecx, [edi + 0xa8]
mov byte [ebp - 4], 0x59
call fcn.0040c150
mov edx, dword [ebp - 0x3d4]
mov eax, esi
mov byte [ebp - 4], 0x58
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x438603
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x320]
call fcn.0040bb80
mov edx, dword [ebp - 0x36c]
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x43862d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
push 0x572760
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0xf
mov byte [ebp - 0x338], 0
call fcn.004211a0
lea eax, [ebp - 0x338]
mov byte [ebp - 4], 0x5a
push eax
lea eax, [ebp - 0x350]
push eax
lea ecx, [ebp + 8]
call fcn.00504e70
mov esi, eax
lea eax, [edi + 0xac]
cmp eax, esi
je 0x4386af
mov ecx, eax
call fcn.0040bb80
movups xmm0, xmmword [esi]
movups xmmword [edi + 0xac], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0xbc], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
lea ecx, [ebp - 0x350]
call fcn.0040bb80
lea ecx, [ebp - 0x338]
mov byte [ebp - 4], 1
call fcn.0040bb80
lea eax, [edi + 0x94]
push eax
call fcn.00418e40
mov ecx, eax
call fcn.00423190
mov eax, dword [edi]
cmp dword [eax - 0xc], 0
je 0x438721
mov eax, dword [edi + 0x14]
cmp dword [eax - 0xc], 0
je 0x438721
mov eax, dword [edi + 0x10]
cmp dword [eax - 0xc], 0
je 0x438721
mov eax, dword [edi + 0x1c]
cmp dword [eax - 0xc], 0
je 0x438721
mov eax, dword [edi + 0x20]
cmp dword [eax - 0xc], 0
je 0x438721
mov eax, dword [edi + 0x18]
cmp dword [eax - 0xc], 0
je 0x438721
mov eax, dword [edi + 0x68]
cmp dword [eax - 0xc], 0
je 0x438721
mov esi, 1
jmp 0x438723
xor esi, esi
lea ecx, [ebp - 0x128]
call fcn.0040bbd0
lea ecx, [ebp + 8]
call fcn.00501200
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0046c16d
mov esp, ebp
pop ebp
ret 0x18
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
call fcn.0051a7fc
call fcn.0051a7fc
push 0x80004005
call fcn.00410dc0
push 0x80070057
call fcn.00410dc0
int3