Function at 0x10040fb0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10152ea8
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x101a154c]
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.1009a9e0
lea eax, [ebp - 0x14]
mov dword [ebp - 4], edi
push eax
mov dword [ebp - 0x14], edi
call fcn.10070f00
add esp, 0xc
mov byte [ebp - 4], 1
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f2e
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 2
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f38
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 0x1004105a
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10041066
push 9
push str.host_test
call fcn.1001c8c0
mov byte [ebp - 4], 4
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f42
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 0x100410a2
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x100410ae
push 0xa
push str.PetsPlugin
call fcn.1001c8c0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 6
push eax
call fcn.1004dac0
push eax
push 0
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.1009b130
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 0x100410f5
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 0x10041113
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 0x10041131
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f4c
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 0x1004117d
call fcn.1003fb90
mov edx, eax
test edx, edx
jne 0x10041166
xor ecx, ecx
jmp 0x100411a0
mov ecx, edx
lea esi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10041170
jmp 0x1004119c
call fcn.1003ff70
mov edx, eax
test edx, edx
jne 0x1004118c
xor ecx, ecx
jmp 0x100411a0
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10041191
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.1001c8c0
mov eax, dword [ebp - 0x14]
cmp dword [eax - 0xc], 0
jne 0x100411d5
push dword [ebp - 0x18]
lea ecx, [ebp - 0x49]
push str.bird
push dword [ebp - 0x5c]
call fcn.1003fd90
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.1001ad60
add esp, 0x14
jmp 0x1004124c
lea eax, [ebp - 0x1c]
push eax
call fcn.100711c0
mov esi, eax
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 9
push eax
call fcn.10070f00
add esp, 8
push dword [esi]
lea ecx, [ebp - 0x49]
mov byte [ebp - 4], 0xa
push dword [eax]
push dword [ebp - 0x5c]
call fcn.1003fe80
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.1001ad60
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 0x1004122e
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 0x1004124c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f56
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x60], eax
push 0
push 0x3a98
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.1001c9a0
add esp, 0x10
test eax, eax
jne 0x100412a5
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 0x100412df
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x100412df
mov edi, dword [ebp - 0x60]
push edi
call fcn.1008afb0
mov esi, eax
add esp, 4
mov dword [ebp - 0x68], esi
mov byte [ebp - 4], 0xc
test esi, esi
jne 0x10041376
add edi, 0xfffffff0
mov byte [ebp - 4], 8
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x100412dd
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 0x100412fd
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 0x1004131b
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 0x10041339
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 0x10041358
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.100f8fe1
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.10015880
push 0
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0xd
push eax
push esi
call fcn.1008b8a0
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 0x100413ed
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100413e0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042f60
push edx
push ecx
call fcn.100f8c70
mov al, byte [ebp - 0x49]
add esp, 8
test al, al
je 0x100413ff
push esi
call fcn.1008ae40
add esp, 4
jmp 0x100412c2
push str.data
push esi
call fcn.1008aef0
add esp, 8
mov dword [ebp - 0x50], eax
test eax, eax
jne 0x10041422
push esi
call fcn.1008ae40
add esp, 4
jmp 0x100412c2
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.10015880
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.1008b840
mov byte [ebx], al
add esp, 0xc
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x10041497
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004148d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042f65
push edx
push ecx
call fcn.100f8c70
add esp, 8
mov ebx, dword [ebp - 0x54]
mov eax, dword [ebx]
cmp byte [eax], 0
jne 0x100414b5
push esi
call fcn.1008ae40
add esp, 4
add edi, 0xfffffff0
or ebx, 0xffffffff
jmp 0x100412c5
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f6a
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, 0x1015fecc
mov byte [ebp - 4], 0xf
shr eax, 0x10
mov ecx, 0x1015fecc
mov dword [ebp - 0x58], eax
test eax, eax
jne 0x100414f5
movzx eax, cx
lea ecx, [ebp - 0x24]
push eax
call fcn.10014c30
jmp 0x10041504
push 0
push 0x1015fecc
lea ecx, [ebp - 0x24]
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x100415be
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x28], eax
jl 0x100415b3
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x100415b3
push dword [ebp - 0x1c]
call fcn.10019b20
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 0x100415a9
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 0x100415c1
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.1001c8c0
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 0x100415df
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 0x10041617
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004160d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042f74
push edx
push ecx
call fcn.100f8c70
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 0x10041647
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f79
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, 0x101605a0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x24]
test eax, 0xffff0000
jne 0x1004167f
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x1004168b
push 1
push 0x101605a0
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x10041746
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004173a
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004173a
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10041730
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 0x10041746
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x1c]
push edx
call fcn.1001c8c0
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 0x10041764
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 0x1004179c
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041792
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042f83
push edx
push ecx
call fcn.100f8c70
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 0x100417cc
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.10015880
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.1008b840
mov byte [ebx + 0xc], al
add esp, 0xc
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x10041842
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041838
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042f88
push edx
push ecx
call fcn.100f8c70
add esp, 8
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f8d
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 0x10041879
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10041885
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0x11
push str.temp_tan_back_img
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.10015880
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.1008b910
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 0x10041943
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10041938
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10041938
push dword [ebp - 0x20]
call fcn.10019b20
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 0x1004192e
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 0x10041946
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.1001c8c0
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 0x10041964
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 0x1004199c
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041992
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042f97
push edx
push ecx
call fcn.100f8c70
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 0x100419cc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042f9c
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 0x10041a03
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10041a0f
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0x13
push str.temp_tan_button_img
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.10015880
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.1008b910
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 0x10041aca
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10041abe
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10041abe
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10041ab4
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 0x10041aca
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x1c]
push edx
call fcn.1001c8c0
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 0x10041ae8
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 0x10041b20
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041b16
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042fa6
push edx
push ecx
call fcn.100f8c70
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 0x10041b50
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042fab
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, 0x1015f9a8
mov byte [ebp - 4], 0x20
test eax, 0xffff0000
jne 0x10041b88
movzx eax, ax
lea ecx, [ebp - 0x24]
push eax
call fcn.10014c30
jmp 0x10041c02
push 0
push 0
push 0xffffffffffffffff
push 0x1015f9a8
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
dec eax
mov dword [ebp - 0x1c], eax
test eax, eax
jle 0x10041bfa
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 0x10041bc8
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x24]
call fcn.10014de0
mov eax, dword [ebp - 0x24]
push dword [ebp - 0x1c]
push eax
push 0xffffffffffffffff
push 0x1015f9a8
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 0x10042fb5
mov dword [eax - 0xc], ecx
xor edx, edx
mov eax, dword [ebp - 0x24]
mov word [eax + ecx*2], dx
jmp 0x10041c02
lea ecx, [ebp - 0x24]
call fcn.1001abd0
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.10015880
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.1008b910
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 0x10041cbd
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10041cb1
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10041cb1
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10041ca7
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 0x10041cbd
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x1c]
push edx
call fcn.1001c8c0
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 0x10041cdb
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 0x10041d13
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041d09
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042fbf
push edx
push ecx
call fcn.100f8c70
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 0x10041d43
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.10015880
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.1008b840
mov byte [ebx + 0x1c], al
add esp, 0xc
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x10041db9
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041daf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042fc4
push edx
push ecx
call fcn.100f8c70
add esp, 8
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042fc9
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 0x10041df0
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10041dfc
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0x13
push str.memory_tan_back_img
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.10015880
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.1008b910
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 0x10041eba
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10041eaf
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10041eaf
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10041ea5
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 0x10041ebd
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.1001c8c0
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 0x10041edb
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 0x10041f13
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10041f09
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042fd3
push edx
push ecx
call fcn.100f8c70
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 0x10041f43
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042fd8
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 0x10041f7a
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10041f86
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0x15
push str.memory_tan_button_img
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.10015880
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.1008b910
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 0x10042041
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042035
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042035
push dword [ebp - 0x20]
call fcn.10019b20
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 0x1004202b
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 0x10042041
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x1004205f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x10042085
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042fe2
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 0x100420bc
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x100420c8
push 0
push 0x1015fecc
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x10042183
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042177
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042177
push dword [ebp - 0x20]
call fcn.10019b20
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 0x1004216d
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 0x10042183
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x100421a1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x100421c7
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.10015880
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.1008b840
add esp, 0xc
mov byte [ebx + 0x2c], al
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.10013a00
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042fec
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 0x10042248
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10042254
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0xf
push str.c_tan_back_img1
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.10015880
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.1008b910
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 0x10042312
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042307
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042307
push dword [ebp - 0x20]
call fcn.10019b20
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 0x100422fd
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 0x10042315
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.1001c8c0
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 0x10042333
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x10042359
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10042ff6
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 0x10042390
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x1004239c
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0x11
push str.c_tan_button_img1
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.10015880
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.1008b910
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 0x10042457
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004244b
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004244b
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042441
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 0x10042457
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x10042475
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x1004249b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10043000
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 0x100424d2
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x100424de
push 0
push 0x1015fecc
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x10042599
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x1004258d
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x1004258d
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042583
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 0x10042599
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x100425b7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x100425dd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x1004300a
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 0x10042614
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10042620
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0xf
push str.c_tan_back_img2
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.10015880
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.1008b910
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 0x100426db
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x100426cf
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x100426cf
push dword [ebp - 0x20]
call fcn.10019b20
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 0x100426c5
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 0x100426db
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x100426f9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x1004271f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10043014
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 0x10042756
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10042762
push 0
push 0x1015fecc
call fcn.1001c8c0
push 0x11
push str.c_tan_button_img2
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.10015880
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.1008b910
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 0x1004281d
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042811
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042811
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042807
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 0x1004281d
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x1004283b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x10042861
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x1004301e
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 0x10042898
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x100428a4
push 0
push 0x1015fecc
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x1004295f
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042953
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042953
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042949
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 0x1004295f
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x1004297d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x100429a3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10043028
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 0x100429da
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x100429e6
push 0
push 0x1015fecc
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x10042aa1
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042a95
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042a95
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042a8b
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 0x10042aa1
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x10042abf
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x10042ae5
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.10015880
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.1008b8a0
add esp, 0xc
mov dword [ebx + 0x4c], eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.10013a00
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10043032
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 0x10042b66
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10042b72
push 0
push 0x1015fecc
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x10042c30
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042c25
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042c25
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042c1b
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 0x10042c33
push dword [edx - 0xc]
mov ecx, ebx
push edx
call fcn.1001c8c0
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 0x10042c51
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x10042c77
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x1004303c
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 0x10042cae
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10042cba
push 0
push 0x1015fecc
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x10042d75
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042d69
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042d69
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042d5f
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 0x10042d75
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x10042d93
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x10042db9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.10017d20
mov ecx, eax
test ecx, ecx
je 0x10043046
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 0x10042df0
mov eax, 0x1015fecc
movzx eax, ax
push eax
call fcn.10014c30
jmp 0x10042dfc
push 0
push 0x1015fecc
call fcn.1001c8c0
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.10015880
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.1008b910
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 0x10042eb7
cmp dword [ecx + 0xc], 0
lea eax, [ecx + 0xc]
mov dword [ebp - 0x30], eax
jl 0x10042eab
mov eax, dword [edx - 0x10]
cmp eax, dword [ecx]
jne 0x10042eab
push dword [ebp - 0x20]
call fcn.10019b20
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 0x10042ea1
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 0x10042eb7
push dword [edx - 0xc]
mov ecx, dword [ebp - 0x24]
push edx
call fcn.1001c8c0
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 0x10042ed5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x48]
call fcn.10013a00
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 0x10042efb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push esi
mov dword [ebp - 0x20], 1
call fcn.1008ae40
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 0x10042f26
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edi, dword [ebp - 0x20]
jmp 0x100412df
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
call fcn.10124793
call fcn.10124793
push 0x80004005
call fcn.100142b0
call fcn.10124793
push 0x80004005
call fcn.100142b0
call fcn.10124793
call fcn.10124793
push 0x80004005
call fcn.100142b0
call fcn.10124793
push 0x80004005
call fcn.100142b0
call fcn.10124793
push 0x80004005
call fcn.100142b0
push 0x80070057
call fcn.100142b0
call fcn.10124793
call fcn.10124793
push 0x80004005
call fcn.100142b0
call fcn.10124793
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
push 0x80004005
call fcn.100142b0
int3