Function at 0x100451a0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10182388
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x101dd594]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x54], ecx
lea eax, [ebp - 0x18]
xor edi, edi
push 1
push eax
mov dword [ebp - 0x18], edi
call fcn.100c93f0
lea eax, [ebp - 0x14]
mov dword [ebp - 4], edi
push eax
mov dword [ebp - 0x14], edi
call fcn.10077c80
add esp, 0xc
mov byte [ebp - 4], 1
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004711e
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 2
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047128
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, str.host_test
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x24]
test eax, 0xffff0000
jne 0x1004524a
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10045256
push 9
push str.host_test
call fcn.10020080
mov byte [ebp - 4], 4
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047132
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x5c], eax
mov eax, str.PetsPlugin
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5c]
test eax, 0xffff0000
jne 0x10045292
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x1004529e
push 0xa
push str.PetsPlugin
call fcn.10020080
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 6
push eax
call fcn.10051fb0
push eax
push 0
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.100c9b30
mov edx, dword [ebp - 0x60]
or ebx, 0xffffffff
add esp, 0x14
mov byte [ebp - 4], 6
mov esi, eax
add edx, 0xfffffff0
mov ecx, ebx
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x100452e5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x5c]
mov eax, ebx
mov byte [ebp - 4], 4
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045303
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov byte [ebp - 4], 2
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045321
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004713c
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x5c], eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x49]
cmp esi, 1
je 0x1004536d
call fcn.10043b00
mov edx, eax
test edx, edx
jne 0x10045356
xor ecx, ecx
jmp 0x10045390
mov ecx, edx
lea esi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10045360
jmp 0x1004538c
call fcn.10043ee0
mov edx, eax
test edx, edx
jne 0x1004537c
xor ecx, ecx
jmp 0x10045390
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10045381
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.10020080
mov eax, dword [ebp - 0x14]
cmp dword [eax - 0xc], 0
jne 0x100453c5
push dword [ebp - 0x18]
lea ecx, [ebp - 0x49]
push str.bird
push dword [ebp - 0x5c]
call fcn.10043d00
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.1001e580
add esp, 0x14
jmp 0x1004543c
lea eax, [ebp - 0x1c]
push eax
call fcn.10077f40
mov esi, eax
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 9
push eax
call fcn.10077c80
add esp, 8
push dword [esi]
lea ecx, [ebp - 0x49]
mov byte [ebp - 4], 0xa
push dword [eax]
push dword [ebp - 0x5c]
call fcn.10043df0
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.1001e580
mov edx, dword [ebp - 0x60]
add esp, 0x14
mov byte [ebp - 4], 9
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1004541e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 8
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1004543c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047146
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x60], eax
push 0
push 0xea60
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.10020160
add esp, 0x10
test eax, eax
jne 0x10045495
mov edx, dword [ebp - 0x60]
mov eax, ebx
mov byte [ebp - 4], 8
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100454cf
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x100454cf
mov edi, dword [ebp - 0x60]
push edi
call fcn.100b8a10
mov esi, eax
add esp, 4
mov dword [ebp - 0x68], esi
mov byte [ebp - 4], 0xc
test esi, esi
jne 0x10045566
add edi, 0xfffffff0
mov byte [ebp - 4], 8
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x100454cd
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
xor edi, edi
mov edx, dword [ebp - 0x5c]
mov eax, ebx
mov byte [ebp - 4], 2
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100454ed
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x64]
mov eax, ebx
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1004550b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045529
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 4], 0xffffffff
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x10045548
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10128191
mov esp, ebp
pop ebp
ret
push 5
push str.errno
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0xd
push eax
push esi
call fcn.100b9310
mov edx, dword [ebp - 0x34]
add esp, 0xc
test eax, eax
mov byte [ebp - 4], 0xc
setne al
mov byte [ebp - 0x49], al
cmp edx, 0x10
jb 0x100455dd
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100455d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10047150
push edx
push ecx
call fcn.10127e1e
mov al, byte [ebp - 0x49]
add esp, 8
test al, al
je 0x100455ef
push esi
call fcn.100b88a0
add esp, 4
jmp 0x100454b2
push str.data
push esi
call fcn.100b8950
add esp, 8
mov dword [ebp - 0x50], eax
test eax, eax
jne 0x10045612
push esi
call fcn.100b88a0
add esp, 4
jmp 0x100454b2
push 7
push str.is_open
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
mov eax, dword [ebp - 0x54]
push 0
mov byte [ebp - 4], 0xe
mov ebx, dword [eax]
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
call fcn.100b92b0
mov byte [ebx], al
add esp, 0xc
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x10045687
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004567d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10047155
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov ebx, dword [ebp - 0x54]
mov eax, dword [ebx]
cmp byte [eax], 0
jne 0x100456a5
push esi
call fcn.100b88a0
add esp, 4
add edi, 0xfffffff0
or ebx, 0xffffffff
jmp 0x100454b5
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004715a
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, 0x10193fcc
mov byte [ebp - 4], 0xf
shr eax, 0x10
mov ecx, 0x10193fcc
mov dword [ebp - 0x58], eax
test eax, eax
jne 0x100456e5
movzx eax, cx
lea ecx, [ebp - 0x24]
push eax
call fcn.100183a0
jmp 0x100456f4
push 0
push 0x10193fcc
lea ecx, [ebp - 0x24]
call fcn.10020080
push 7
push str.product
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x20]
push eax
call fcn.100b9380
add esp, 0x14
mov ebx, dword [ebx]
mov edx, dword [eax]
add ebx, 4
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x30], ebx
mov ecx, dword [ebx]
lea eax, [edx - 0x10]
sub ecx, 0x10
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x100457ae
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x28], eax
jl 0x100457a3
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x100457a3
push dword [ebp - 0x1c]
call fcn.1001d450
mov edx, dword [ebp - 0x28]
or ebx, 0xffffffff
add esp, 4
mov dword [ebp - 0x1c], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10045799
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x30]
add eax, 0x10
mov dword [ecx], eax
jmp 0x100457b1
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.10020080
or ebx, 0xffffffff
mov edx, dword [ebp - 0x20]
mov eax, ebx
mov byte [ebp - 4], 0x11
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100457cf
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x10
cmp edx, 0x10
jb 0x10045807
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100457fd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10047164
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov dword [ebp - 0x38], 0
add edx, 0xfffffff0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045837
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047169
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, 0x101946a0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x24]
test eax, 0xffff0000
jne 0x1004586f
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x1004587b
push 1
push 0x101946a0
call fcn.10020080
push 0xc
push str.tan_position
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x16
mov ecx, dword [ecx]
add ecx, 8
lea eax, [edx - 0x10]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10045936
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004592a
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004592a
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10045920
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10045936
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x1c]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x15
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045954
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x14
cmp edx, 0x10
jb 0x1004598c
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045982
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10047173
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov dword [ebp - 0x38], 0
add edx, 0xfffffff0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100459bc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0xc
push str.temp_is_open
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
mov eax, dword [ebp - 0x54]
push 0
mov byte [ebp - 4], 0x17
mov ebx, dword [eax]
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
call fcn.100b92b0
mov byte [ebx + 0xc], al
add esp, 0xc
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x10045a32
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045a28
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10047178
push edx
push ecx
call fcn.10127e1e
add esp, 8
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004717d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x18
jne 0x10045a69
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10045a75
push 0
push 0x10193fcc
call fcn.10020080
push 0x15
push str.temp_tan_back_img_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x1c]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x1b
mov ebx, dword [ecx]
mov ecx, dword [ebx + 0x10]
lea eax, [edx - 0x10]
add ebx, 0x10
mov dword [ebp - 0x20], eax
sub ecx, 0x10
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10045b33
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10045b28
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10045b28
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
or ebx, 0xffffffff
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10045b1e
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x28]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10045b36
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.10020080
or ebx, 0xffffffff
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0x1a
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045b54
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x19
cmp edx, 0x10
jb 0x10045b8c
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045b82
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10047187
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov dword [ebp - 0x38], 0
add edx, 0xfffffff0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045bbc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004718c
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x1c
jne 0x10045bf3
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10045bff
push 0
push 0x10193fcc
call fcn.10020080
push 0x17
push str.temp_tan_button_img_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x1f
mov ecx, dword [ecx]
add ecx, 0x14
lea eax, [edx - 0x10]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10045cba
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10045cae
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10045cae
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10045ca4
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10045cba
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x1c]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x1e
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045cd8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1d
cmp edx, 0x10
jb 0x10045d10
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045d06
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10047196
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov dword [ebp - 0x38], 0
add edx, 0xfffffff0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045d40
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004719b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, 0x10193aa8
mov byte [ebp - 4], 0x20
test eax, 0xffff0000
jne 0x10045d78
movzx eax, ax
lea ecx, [ebp - 0x24]
push eax
call fcn.100183a0
jmp 0x10045df2
push 0
push 0
push 0xffffffffffffffff
push 0x10193aa8
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
dec eax
mov dword [ebp - 0x1c], eax
test eax, eax
jle 0x10045dea
mov eax, dword [ebp - 0x24]
mov edx, 1
mov ecx, dword [eax - 8]
sub edx, dword [eax - 4]
sub ecx, dword [ebp - 0x1c]
or ecx, edx
jge 0x10045db8
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x24]
call fcn.10018550
mov eax, dword [ebp - 0x24]
push dword [ebp - 0x1c]
push eax
push 0xffffffffffffffff
push 0x10193aa8
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [eax - 8]
jg 0x100471a5
mov dword [eax - 0xc], ecx
xor edx, edx
mov eax, dword [ebp - 0x24]
mov word [eax + ecx*2], dx
jmp 0x10045df2
lea ecx, [ebp - 0x24]
call fcn.1001e3f0
push 0x10
push str.temp_tan_content
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x22
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x23
mov ecx, dword [ecx]
add ecx, 0x18
lea eax, [edx - 0x10]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10045ead
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10045ea1
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10045ea1
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10045e97
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10045ead
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x1c]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x22
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045ecb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x21
cmp edx, 0x10
jb 0x10045f03
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045ef9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100471af
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov dword [ebp - 0x38], 0
add edx, 0xfffffff0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10045f33
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0xe
push str.memory_is_open
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
mov eax, dword [ebp - 0x54]
push 0
mov byte [ebp - 4], 0x24
mov ebx, dword [eax]
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
call fcn.100b92b0
mov byte [ebx + 0x1c], al
add esp, 0xc
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x10045fa9
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10045f9f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100471b4
push edx
push ecx
call fcn.10127e1e
add esp, 8
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x100471b9
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x25
jne 0x10045fe0
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10045fec
push 0
push 0x10193fcc
call fcn.10020080
push 0x17
push str.memory_tan_back_img_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x26
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x27
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x24]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x28
mov ebx, dword [ecx]
mov ecx, dword [ebx + 0x20]
lea eax, [edx - 0x10]
add ebx, 0x20
mov dword [ebp - 0x20], eax
sub ecx, 0x10
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x100460aa
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004609f
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004609f
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
or ebx, 0xffffffff
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10046095
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x28]
add eax, 0x10
mov dword [ecx], eax
jmp 0x100460ad
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.10020080
or ebx, 0xffffffff
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov byte [ebp - 4], 0x27
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100460cb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x26
cmp edx, 0x10
jb 0x10046103
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100460f9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100471c3
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov dword [ebp - 0x38], 0
add edx, 0xfffffff0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046133
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x100471c8
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x29
jne 0x1004616a
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046176
push 0
push 0x10193fcc
call fcn.10020080
push 0x19
push str.memory_tan_button_img_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x2a
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x2b
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x2c
mov ecx, dword [ecx]
add ecx, 0x24
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046231
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10046225
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10046225
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1004621b
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046231
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x2b
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1004624f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046275
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x100471d2
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x2d
jne 0x100462ac
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x100462b8
push 0
push 0x10193fcc
call fcn.10020080
push 0x12
push str.memory_tan_content
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x2e
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x2f
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x30
mov ecx, dword [ecx]
add ecx, 0x28
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046373
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10046367
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10046367
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1004635d
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046373
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x2f
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046391
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100463b7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 9
push str.c_is_open
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
mov eax, dword [ebp - 0x54]
push 0
mov byte [ebp - 4], 0x31
mov ebx, dword [eax]
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
call fcn.100b92b0
add esp, 0xc
mov byte [ebx + 0x2c], al
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.10017170
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x100471dc
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x32
jne 0x10046438
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046444
push 0
push 0x10193fcc
call fcn.10020080
push 0x13
push str.c_tan_back_img1_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x33
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x34
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x24]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x35
mov ebx, dword [ecx]
mov ecx, dword [ebx + 0x30]
lea eax, [edx - 0x10]
add ebx, 0x30
mov dword [ebp - 0x20], eax
sub ecx, 0x10
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046502
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x100464f7
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x100464f7
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
or ebx, 0xffffffff
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100464ed
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x28]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046505
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.10020080
or ebx, 0xffffffff
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov byte [ebp - 4], 0x34
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046523
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046549
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x100471e6
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x36
jne 0x10046580
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x1004658c
push 0
push 0x10193fcc
call fcn.10020080
push 0x15
push str.c_tan_button_img1_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x37
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x38
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x39
mov ecx, dword [ecx]
add ecx, 0x34
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046647
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004663b
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004663b
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10046631
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046647
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x38
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046665
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1004668b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x100471f0
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x3a
jne 0x100466c2
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x100466ce
push 0
push 0x10193fcc
call fcn.10020080
push 0xe
push str.c_tan_content1
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x3b
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x3c
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x3d
mov ecx, dword [ecx]
add ecx, 0x38
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046789
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004677d
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004677d
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10046773
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046789
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x3c
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100467a7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100467cd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x100471fa
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x3e
jne 0x10046804
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046810
push 0
push 0x10193fcc
call fcn.10020080
push 0x13
push str.c_tan_back_img2_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x3f
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x40
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x41
mov ecx, dword [ecx]
add ecx, 0x3c
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x100468cb
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x100468bf
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x100468bf
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100468b5
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x100468cb
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x40
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100468e9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1004690f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047204
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x42
jne 0x10046946
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046952
push 0
push 0x10193fcc
call fcn.10020080
push 0x15
push str.c_tan_button_img2_zip
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x43
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x44
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x45
mov ecx, dword [ecx]
add ecx, 0x40
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046a0d
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10046a01
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10046a01
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100469f7
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046a0d
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x44
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046a2b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046a51
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004720e
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x46
jne 0x10046a88
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046a94
push 0
push 0x10193fcc
call fcn.10020080
push 0xe
push str.c_tan_content2
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x47
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x48
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x49
mov ecx, dword [ecx]
add ecx, 0x44
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046b4f
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10046b43
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10046b43
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10046b39
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046b4f
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x48
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046b6d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046b93
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047218
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x4a
jne 0x10046bca
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046bd6
push 0
push 0x10193fcc
call fcn.10020080
push 9
push str.tan_first
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x4b
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x4c
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x4d
mov ecx, dword [ecx]
add ecx, 0x48
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046c91
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10046c85
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10046c85
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10046c7b
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046c91
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x4c
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046caf
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046cd5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x11
push str.tan_interval_time
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
mov eax, dword [ebp - 0x54]
push 0
mov byte [ebp - 4], 0x4e
mov ebx, dword [eax]
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
call fcn.100b9310
add esp, 0xc
mov dword [ebx + 0x4c], eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.10017170
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047222
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x4f
jne 0x10046d56
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046d62
push 0
push 0x10193fcc
call fcn.10020080
push 0xb
push str.package_url
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x50
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x51
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x24]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x52
mov ebx, dword [ecx]
mov ecx, dword [ebx + 0x50]
lea eax, [edx - 0x10]
add ebx, 0x50
mov dword [ebp - 0x20], eax
sub ecx, 0x10
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046e20
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10046e15
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10046e15
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
or ebx, 0xffffffff
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10046e0b
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x28]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046e23
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.10020080
or ebx, 0xffffffff
mov edx, dword [ebp - 0x24]
mov eax, ebx
mov byte [ebp - 4], 0x51
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046e41
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046e67
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1004722c
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x53
jne 0x10046e9e
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046eaa
push 0
push 0x10193fcc
call fcn.10020080
push 0xb
push str.package_md5
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x54
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x55
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x56
mov ecx, dword [ecx]
add ecx, 0x54
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x10046f65
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10046f59
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10046f59
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10046f4f
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x10046f65
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x55
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046f83
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10046fa9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10047236
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x58], 0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x57
jne 0x10046fe0
mov eax, 0x10193fcc
movzx eax, ax
push eax
call fcn.100183a0
jmp 0x10046fec
push 0
push 0x10193fcc
call fcn.10020080
push 0xb
push str.install_cmd
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.10019000
push 0xfde9
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x59
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x28]
push eax
call fcn.100b9380
add esp, 0x14
mov ecx, dword [ebp - 0x54]
mov edx, dword [eax]
mov byte [ebp - 4], 0x5a
mov ecx, dword [ecx]
add ecx, 0x58
lea eax, [edx - 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [ecx]
sub ecx, 0x10
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
je 0x100470a7
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004709b
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004709b
push dword [ebp - 0x20]
call fcn.1001d450
mov edx, dword [ebp - 0x30]
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, ebx
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10047091
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
add eax, 0x10
mov dword [ecx], eax
jmp 0x100470a7
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.10020080
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 0x59
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100470c5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10017170
mov edx, dword [ebp - 0x1c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100470eb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push esi
mov dword [ebp - 0x20], 1
call fcn.100b88a0
add esp, 4
mov byte [ebp - 4], 8
add edi, 0xfffffff0
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x10047116
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edi, dword [ebp - 0x20]
jmp 0x100454cf
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
call fcn.10153963
call fcn.10153963
push 0x80004005
call fcn.10017a40
call fcn.10153963
push 0x80004005
call fcn.10017a40
call fcn.10153963
call fcn.10153963
push 0x80004005
call fcn.10017a40
call fcn.10153963
push 0x80004005
call fcn.10017a40
call fcn.10153963
push 0x80004005
call fcn.10017a40
push 0x80070057
call fcn.10017a40
call fcn.10153963
call fcn.10153963
push 0x80004005
call fcn.10017a40
call fcn.10153963
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
int3