Function at 0x413340
Capabilities:
Contain obfuscated stackstrings
Delete file
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x580cd7
mov eax, dword fs:[0]
push eax
sub esp, 0x118
mov eax, dword [0x5ebdb0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x98]
push edx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x5c], ecx
mov byte [ebp - 0x52], 1
call fcn.00434830
push 0x5b0bc8
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], 0
call fcn.00401d90
mov esi, eax
push 0x5b0bc8
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 1
call fcn.00401d90
mov edi, eax
push 0x5b0f34
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 2
call fcn.00401d90
mov ebx, eax
push 0x5b1988
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 3
call fcn.00401d90
push esi
push edi
push ebx
push eax
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 4
mov ecx, dword [eax]
add ecx, 0x16c
push ecx
lea edx, [ebp - 0x98]
push edx
mov ecx, 7
call fcn.004392c0
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0xc0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413428
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0xdc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41344e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0xb4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413474
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413497
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0xfc]
push ecx
call fcn.00422a30
mov edi, dword [ebp - 0x4c]
mov byte [ebp - 4], 5
mov eax, dword [edi]
mov eax, dword [eax + 0x158]
sub eax, 0x10
push eax
call fcn.00405320
lea esi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0xc0], esi
lea edx, [ebp - 0xc0]
push edx
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 6
call fcn.004050b0
lea eax, [esi - 0x10]
mov byte [ebp - 4], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4134fd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ebx, dword [ebp - 0x5c]
mov esi, dword [edi]
imul ebx, ebx, 0xea4
mov eax, dword [esi + ebx + 0x10b8]
mov byte [ebp - 0x51], 0
mov dword [ebp - 0x7c], ebx
test eax, eax
jle 0x41356f
lea edi, [esi + ebx + 0xe44]
mov dword [ebp - 0x5c], eax
cmp byte [edi + 0x10], 1
je 0x413564
mov eax, dword [edi]
mov ecx, 0x5b1620
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x413557
test dx, dx
je 0x413553
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x413557
add eax, 4
add ecx, 4
test dx, dx
jne 0x413531
xor eax, eax
jmp 0x41355c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x413564
mov byte [ebp - 0x51], 1
add edi, 0x20
dec dword [ebp - 0x5c]
jne 0x413524
mov edi, dword [ebp - 0x4c]
inc dword [esi + 0xb7440]
mov ecx, dword [edi]
mov esi, dword [ebx + ecx + 0x2ec]
lea eax, [ebx + ecx + 0x2ec]
mov ecx, dword [esi - 0x10]
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
mov byte [ebp - 0x45], 0
call eax
cmp dword [esi - 4], 0
lea edx, [esi - 4]
jl 0x4135af
cmp eax, dword [esi - 0x10]
jne 0x4135af
lea edi, [esi - 0x10]
mov ecx, 1
lock xadd dword [edx], ecx
jmp 0x4135e8
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x4135c8
call fcn.004022c0
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
lea eax, [edi + 0x10]
mov dword [ebp - 0x100], eax
mov byte [ebp - 4], 7
mov ecx, dword [eax - 0x10]
mov edx, dword [ecx]
lea edi, [eax - 0x10]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0xc0], edi
call eax
cmp dword [edi + 0xc], 0
lea ecx, [edi + 0xc]
jl 0x413622
cmp eax, dword [edi]
jne 0x413622
mov esi, edi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x41365e
mov ecx, dword [edi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov esi, eax
test esi, esi
jne 0x41363b
call fcn.004022c0
mov eax, dword [edi + 4]
mov dword [esi + 4], eax
mov eax, dword [edi + 4]
lea ecx, [eax + eax + 2]
push ecx
add edi, 0x10
lea edx, [eax + eax + 2]
push edi
push edx
lea eax, [esi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add esi, 0x10
mov dword [ebp - 0xc4], esi
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 8
mov edx, dword [ecx]
mov esi, dword [ebx + edx + 0x2d4]
mov ecx, dword [esi - 0x10]
lea eax, [ebx + edx + 0x2d4]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea edx, [esi - 4]
jl 0x4136a4
cmp eax, dword [esi - 0x10]
jne 0x4136a4
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [edx], eax
jmp 0x4136dd
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x4136bd
call fcn.004022c0
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add edi, 0x10
mov dword [ebp - 0xd8], edi
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 9
mov edx, dword [ecx]
mov esi, dword [ebx + edx + 0x2cc]
mov ecx, dword [esi - 0x10]
lea eax, [ebx + edx + 0x2cc]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea edx, [esi - 4]
jl 0x413723
cmp eax, dword [esi - 0x10]
jne 0x413723
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [edx], eax
jmp 0x41375c
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x41373c
call fcn.004022c0
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add edi, 0x10
mov dword [ebp - 0x80], edi
push 0x5b0bc8
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xa
call fcn.00401d90
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0xb
mov edx, dword [ecx]
mov esi, dword [ebx + edx + 0x2f8]
mov ecx, dword [esi - 0x10]
lea eax, [ebx + edx + 0x2f8]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea edx, [esi - 4]
jl 0x4137b3
cmp eax, dword [esi - 0x10]
jne 0x4137b3
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [edx], eax
jmp 0x4137ec
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x4137cc
call fcn.004022c0
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
lea eax, [edi + 0x10]
mov dword [ebp - 0x104], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [eax - 0x10]
mov edx, dword [ecx]
lea edi, [eax - 0x10]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0xdc], edi
call eax
cmp dword [edi + 0xc], 0
lea ecx, [edi + 0xc]
jl 0x413826
cmp eax, dword [edi]
jne 0x413826
mov esi, edi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x413862
mov ecx, dword [edi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov esi, eax
test esi, esi
jne 0x41383f
call fcn.004022c0
mov eax, dword [edi + 4]
mov dword [esi + 4], eax
mov eax, dword [edi + 4]
lea ecx, [eax + eax + 2]
push ecx
add edi, 0x10
lea edx, [eax + eax + 2]
push edi
push edx
lea eax, [esi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add esi, 0x10
mov dword [ebp - 0xe0], esi
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0xd
mov edx, dword [ecx]
mov esi, dword [ebx + edx + 0x2e0]
mov ecx, dword [esi - 0x10]
lea eax, [ebx + edx + 0x2e0]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea edx, [esi - 4]
jl 0x4138a8
cmp eax, dword [esi - 0x10]
jne 0x4138a8
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [edx], eax
jmp 0x4138e1
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x4138c1
call fcn.004022c0
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
lea esi, [edi + 0x10]
mov dword [ebp - 0xc8], esi
push 0x5b0bc8
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xe
call fcn.00401d90
mov byte [ebp - 4], 0xf
mov eax, dword [esi - 0xc]
test eax, eax
jle 0x413a6c
push 0x2c
push esi
call fcn.0055159c
add esp, 8
test eax, eax
je 0x413a6c
sub eax, esi
sar eax, 1
mov ebx, eax
test ebx, ebx
jle 0x413a6c
push ebx
lea ecx, [ebp - 0x58]
push ecx
lea ecx, [ebp - 0xc8]
call fcn.0041ba20
mov byte [ebp - 4], 0x10
mov ecx, dword [eax]
mov edi, dword [ebp - 0xa0]
lea eax, [ecx - 0x10]
add edi, 0xfffffff0
cmp eax, edi
je 0x4139a9
cmp dword [edi + 0xc], 0
jl 0x413999
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x413999
push eax
call fcn.00405320
mov dword [ebp - 0xb4], eax
add esp, 4
lea eax, [edi + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x413988
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
mov ecx, dword [ebp - 0xb4]
add ecx, 0x10
mov dword [ebp - 0xa0], ecx
jmp 0x4139a9
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0xa0]
call fcn.004021b0
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4139cc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esi - 0xc]
sub eax, ebx
dec eax
push eax
lea ecx, [ebp - 0xb4]
push ecx
lea ecx, [ebp - 0xc8]
call fcn.0041b9a0
mov byte [ebp - 4], 0x11
mov ecx, dword [eax]
lea eax, [ecx - 0x10]
lea edi, [esi - 0x10]
cmp eax, edi
je 0x413a46
cmp dword [edi + 0xc], 0
lea ebx, [edi + 0xc]
jl 0x413a30
mov edx, dword [eax]
cmp edx, dword [edi]
jne 0x413a30
push eax
call fcn.00405320
mov esi, eax
add esp, 4
or eax, 0xffffffff
lock xadd dword [ebx], eax
dec eax
test eax, eax
jg 0x413a25
mov ecx, dword [edi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push edi
call eax
add esi, 0x10
mov dword [ebp - 0xc8], esi
jmp 0x413a46
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0xc8]
call fcn.004021b0
mov esi, dword [ebp - 0xc8]
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0xb4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413a6c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esi - 0x10]
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
add esi, 0xfffffff0
mov dword [ebp - 0xb4], esi
call eax
cmp dword [esi + 0xc], 0
lea ecx, [esi + 0xc]
jl 0x413a99
cmp eax, dword [esi]
jne 0x413a99
mov edi, esi
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x413ad5
mov ecx, dword [esi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
jne 0x413ab2
call fcn.004022c0
mov eax, dword [esi + 4]
mov dword [edi + 4], eax
mov eax, dword [esi + 4]
lea ecx, [eax + eax + 2]
push ecx
add esi, 0x10
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add edi, 0x10
mov dword [ebp - 0x70], edi
mov esi, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x7c]
mov byte [ebp - 4], 0x12
mov ecx, dword [esi]
cmp dword [ecx + edx + 0x10b8], 0
mov dword [ebp - 0x60], 0
jle 0x4142e1
lea esp, [esp]
mov eax, dword [ebp - 0x60]
add eax, 0x72
shl eax, 5
add eax, ecx
add eax, dword [ebp - 0x7c]
mov esi, dword [eax]
mov ecx, dword [esi - 0x10]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea edx, [esi - 4]
jl 0x413b36
cmp eax, dword [esi - 0x10]
jne 0x413b36
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [edx], eax
jmp 0x413b6e
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
je 0x4135c3
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
lea ebx, [edi + 0x10]
mov dword [ebp - 0xbc], ebx
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x60]
mov edx, dword [ecx]
shl eax, 5
add eax, dword [ebp - 0x7c]
mov esi, dword [eax + edx + 0xe48]
mov ecx, dword [esi - 0x10]
mov dword [ebp - 0x68], eax
lea eax, [eax + edx + 0xe48]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea edx, [esi - 4]
jl 0x413bc0
cmp eax, dword [esi - 0x10]
jne 0x413bc0
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [edx], eax
jmp 0x413bf8
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
je 0x4135c3
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add edi, 0x10
mov dword [ebp - 0x6c], edi
mov byte [ebp - 4], 0x14
mov ecx, dword [ebx - 0x10]
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
add ebx, 0xfffffff0
mov dword [ebp - 0x5c], ebx
call eax
cmp dword [ebx + 0xc], 0
lea ecx, [ebx + 0xc]
jl 0x413c2c
cmp eax, dword [ebx]
jne 0x413c2c
mov esi, ebx
mov edx, 1
lock xadd dword [ecx], edx
jmp 0x413c6a
mov edi, dword [ebp - 0x5c]
mov ecx, dword [edi + 4]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov esi, eax
test esi, esi
je 0x4135c3
mov eax, dword [edi + 4]
mov dword [esi + 4], eax
mov eax, dword [edi + 4]
lea ecx, [eax + eax + 2]
push ecx
add edi, 0x10
lea edx, [eax + eax + 2]
push edi
push edx
lea eax, [esi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add esi, 0x10
mov dword [ebp - 0x58], esi
push 0x5b0bc8
push esi
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x15
call fcn.00404aa0
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx]
mov ebx, dword [ebp - 0x68]
cmp byte [ebx + edx + 0xe54], 1
jne 0x413f2b
cmp byte [ebp - 0x51], 0
jne 0x413dfd
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
je 0x414305
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
mov ecx, 0x5b0f34
mov byte [ebp - 4], 0x16
test ecx, 0xffff0000
jne 0x413cf1
mov edx, ecx
movzx esi, dx
push esi
call fcn.00464815
test eax, eax
je 0x413d00
push esi
push eax
lea ecx, [ebp - 0x50]
call fcn.00401f90
jmp 0x413d00
push 1
push 0x5b0f34
lea ecx, [ebp - 0x50]
call fcn.004021b0
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x70]
push ecx
lea edx, [ebp - 0xa4]
push edx
mov byte [ebp - 4], 0x17
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x58]
push ecx
push eax
lea edx, [ebp - 0xb8]
push edx
mov byte [ebp - 4], 0x18
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x19
mov ecx, dword [eax]
mov esi, dword [ebp - 0x70]
lea eax, [ecx - 0x10]
add esi, 0xfffffff0
cmp eax, esi
je 0x413d8e
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x413d81
mov edx, dword [eax]
cmp edx, dword [esi]
jne 0x413d81
push eax
call fcn.00405320
mov ebx, eax
add esp, 4
or eax, 0xffffffff
lock xadd dword [edi], eax
dec eax
test eax, eax
jg 0x413d76
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
add ebx, 0x10
mov dword [ebp - 0x70], ebx
mov ebx, dword [ebp - 0x68]
jmp 0x413d8e
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0x70]
call fcn.004021b0
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0xb8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413db4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0xa4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413dda
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413dfd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx]
mov esi, dword [ebx + edx + 0xe3c]
mov ecx, dword [esi - 0x10]
lea eax, [ebx + edx + 0xe3c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea ecx, [esi - 4]
jl 0x413e36
cmp eax, dword [esi - 0x10]
jne 0x413e36
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [ecx], eax
jmp 0x413e6e
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
je 0x4135c3
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add edi, 0x10
mov dword [ebp - 0x68], edi
mov byte [ebp - 4], 0x1a
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
je 0x414305
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
mov ecx, str.________Option_is_checked:
mov byte [ebp - 4], 0x1b
test ecx, 0xffff0000
jne 0x413ec7
mov edx, ecx
movzx esi, dx
push esi
call fcn.00464815
test eax, eax
je 0x413ed6
push esi
push eax
lea ecx, [ebp - 0x50]
call fcn.00401f90
jmp 0x413ed6
push 0x1b
push str.________Option_is_checked:
lea ecx, [ebp - 0x50]
call fcn.004021b0
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0xac]
push edx
mov byte [ebp - 4], 0x1c
call fcn.0041bac0
add esp, 0xc
mov esi, eax
mov byte [ebp - 4], 0x1d
call fcn.00434f10
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x413f22
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x1a
jmp 0x4141bc
mov ecx, dword [ebp - 0x6c]
cmp dword [ecx - 0xc], 0
jle 0x414093
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
je 0x414305
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
mov ecx, 0x5b0f34
mov byte [ebp - 4], 0x1e
test ecx, 0xffff0000
jne 0x413f87
mov edx, ecx
movzx esi, dx
push esi
call fcn.00464815
test eax, eax
je 0x413f96
push esi
push eax
lea ecx, [ebp - 0x50]
call fcn.00401f90
jmp 0x413f96
push 1
push 0x5b0f34
lea ecx, [ebp - 0x50]
call fcn.004021b0
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x70]
push ecx
lea edx, [ebp - 0x94]
push edx
mov byte [ebp - 4], 0x1f
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x6c]
push ecx
push eax
lea edx, [ebp - 0xb0]
push edx
mov byte [ebp - 4], 0x20
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x21
mov ecx, dword [eax]
mov esi, dword [ebp - 0x70]
lea eax, [ecx - 0x10]
add esi, 0xfffffff0
cmp eax, esi
je 0x414024
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x414017
mov edx, dword [eax]
cmp edx, dword [esi]
jne 0x414017
push eax
call fcn.00405320
mov ebx, eax
add esp, 4
or eax, 0xffffffff
lock xadd dword [edi], eax
dec eax
test eax, eax
jg 0x41400c
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
add ebx, 0x10
mov dword [ebp - 0x70], ebx
mov ebx, dword [ebp - 0x68]
jmp 0x414024
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0x70]
call fcn.004021b0
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0xb0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41404a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x94]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414070
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414093
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx]
mov esi, dword [ebx + edx + 0xe3c]
mov ecx, dword [esi - 0x10]
lea eax, [ebx + edx + 0xe3c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esi - 4], 0
lea ecx, [esi - 4]
jl 0x4140cc
cmp eax, dword [esi - 0x10]
jne 0x4140cc
lea edi, [esi - 0x10]
mov eax, 1
lock xadd dword [ecx], eax
jmp 0x414104
mov ecx, dword [esi - 0xc]
mov edx, dword [eax]
mov edx, dword [edx]
push 2
push ecx
mov ecx, eax
call edx
mov edi, eax
test edi, edi
je 0x4135c3
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov eax, dword [esi - 0xc]
lea ecx, [eax + eax + 2]
push ecx
lea edx, [eax + eax + 2]
push esi
push edx
lea eax, [edi + 0x10]
push eax
call fcn.00550da7
add esp, 0x10
add edi, 0x10
mov dword [ebp - 0x68], edi
mov byte [ebp - 4], 0x22
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
je 0x414305
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
mov ecx, str.________Option_not_checked:
mov byte [ebp - 4], 0x23
test ecx, 0xffff0000
jne 0x41415d
mov edx, ecx
movzx esi, dx
push esi
call fcn.00464815
test eax, eax
je 0x41416c
push esi
push eax
lea ecx, [ebp - 0x50]
call fcn.00401f90
jmp 0x41416c
push 0x1c
push str.________Option_not_checked:
lea ecx, [ebp - 0x50]
call fcn.004021b0
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0xa8]
push edx
mov byte [ebp - 4], 0x24
call fcn.0041bac0
add esp, 0xc
mov esi, eax
mov byte [ebp - 4], 0x25
call fcn.00434f10
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4141b8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4141db
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi - 0x10]
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [ebp - 4], 0x15
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4141fb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x4c]
mov ecx, dword [esi]
cmp byte [ebx + ecx + 0xe54], 1
lea eax, [ebx + ecx]
je 0x414262
mov eax, dword [eax + 0xe44]
mov ecx, 0x5b1620
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x41423e
test dx, dx
je 0x41423a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x41423e
add eax, 4
add ecx, 4
test dx, dx
jne 0x414218
xor eax, eax
jmp 0x414243
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x414262
lea ecx, [ebp - 0x6c]
call fcn.00404e00
mov ecx, eax
call fcn.00404e80
mov edx, dword [eax]
cmp dword [edx - 0xc], 0
jle 0x414262
mov byte [ebp - 0x45], 1
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414285
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4142a8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x5c]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4142c8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x60], eax
cmp eax, dword [ecx + edx + 0x10b8]
jl 0x413b00
cmp byte [ebp - 0x51], 1
jne 0x4146a5
cmp byte [ebp - 0x45], 0
jne 0x4146a5
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x41430f
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
mov ecx, 0x5b0bc8
mov byte [ebp - 4], 0x26
test ecx, 0xffff0000
jne 0x41434a
mov edx, ecx
movzx edi, dx
push edi
call fcn.00464815
test eax, eax
je 0x414359
push edi
push eax
lea ecx, [ebp - 0x50]
call fcn.00401f90
jmp 0x414359
push 0
push 0x5b0bc8
lea ecx, [ebp - 0x50]
call fcn.004021b0
mov byte [ebp - 4], 0x27
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x414377
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x6c], eax
mov ecx, 0x5b0f34
mov byte [ebp - 4], 0x28
test ecx, 0xffff0000
jne 0x4143b2
mov edx, ecx
movzx edi, dx
push edi
call fcn.00464815
test eax, eax
je 0x4143c1
push edi
push eax
lea ecx, [ebp - 0x6c]
call fcn.00401f90
jmp 0x4143c1
push 1
push 0x5b0f34
lea ecx, [ebp - 0x6c]
call fcn.004021b0
mov bl, 0x29
mov byte [ebp - 4], bl
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x4143e0
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x60], eax
mov ecx, 0x5b1a04
mov byte [ebp - 4], 0x2a
test ecx, 0xffff0000
jne 0x41441b
mov edx, ecx
movzx edi, dx
push edi
call fcn.00464815
test eax, eax
je 0x41442a
push edi
push eax
lea ecx, [ebp - 0x60]
call fcn.00401f90
jmp 0x41442a
push 3
push 0x5b1a04
lea ecx, [ebp - 0x60]
call fcn.004021b0
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x6c]
push ecx
lea edx, [ebp - 0x80]
push edx
mov byte [ebp - 4], 0x2b
mov ecx, dword [esi]
lea eax, [ebp - 0x60]
push eax
add ecx, 0x16c
push ecx
lea edx, [ebp - 0x98]
push edx
mov ecx, 0xa
call fcn.004392c0
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x60]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41447a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41449d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4144c0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x70]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4144e3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0xa0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414509
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0xb4]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41452c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0xe0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414552
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0xdc]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414575
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x88]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41459b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x80]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4145be
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0xd8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4145e4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0xc4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41460a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0xc0]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41462d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0xf8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414653
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0xfc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414675
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x98]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41469e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov al, 1
jmp 0x416597
mov ecx, dword [esi]
mov edx, dword [ecx + 0x264]
mov eax, dword [edx - 0xc]
test eax, eax
jle 0x414742
push 0x5b1a0c
lea ecx, [ebp - 0x94]
call fcn.00401d90
push eax
mov byte [ebp - 4], 0x2c
mov eax, dword [esi]
add eax, 0x264
push eax
lea ecx, [ebp - 0xa8]
push ecx
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x2d
mov ecx, dword [esi]
add ecx, 0x264
push eax
call fcn.004050b0
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41471c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x94]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414742
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [esi]
lea ecx, [ebp - 0x80]
push ecx
add edx, 0x264
push edx
lea eax, [ebp - 0xa8]
push eax
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x2e
mov ecx, dword [esi]
add ecx, 0x264
push eax
call fcn.004050b0
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414796
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b1a10
lea ecx, [ebp - 0xa4]
call fcn.00401d90
mov esi, eax
push str.____Downloading_offer:
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x2f
call fcn.00401d90
lea ecx, [ebp - 0xd8]
push ecx
push eax
lea edx, [ebp - 0xb0]
push edx
mov byte [ebp - 4], 0x30
call fcn.0041bac0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0x94]
push eax
mov byte [ebp - 4], 0x31
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0xc4]
push ecx
push eax
lea edx, [ebp - 0xa8]
mov bl, 0x32
push edx
mov byte [ebp - 4], bl
call fcn.0041bac0
add esp, 0xc
mov esi, eax
mov byte [ebp - 4], 0x33
call fcn.00434f10
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414838
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0x94]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41485e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x30
mov eax, dword [ebp - 0xb0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414884
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x2f
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4148aa
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0xa4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4148d0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x4c]
mov eax, dword [esi]
mov ecx, dword [ebp - 0x7c]
cmp dword [eax + ecx + 0x1160], 0
jle 0x4148e9
mov byte [eax + 0x213], 1
mov eax, dword [esi]
lea edx, [eax + ecx + 0x2cc]
push edx
lea edx, [eax + ecx + 0x310]
push edx
lea edx, [eax + ecx + 0x2e8]
lea ecx, [eax + ecx + 0x2d4]
push edx
push ecx
lea ecx, [eax + 0x218]
call fcn.0044d720
push 0x5b11f4
lea ecx, [ebp - 0xa8]
call fcn.00401d90
push eax
mov byte [ebp - 4], 0x34
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 8]
push edx
push eax
lea ecx, [ebp - 0x120]
push ecx
call fcn.004220b0
mov byte [ebp - 4], 0x36
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x414965
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
xor bl, bl
push 0x5b0bc8
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0x45], bl
mov dword [ebp - 0x60], 0
call fcn.00401d90
mov byte [ebp - 4], 0x37
jmp 0x414993
mov bl, byte [ebp - 0x45]
cmp dword [ebp - 0x60], 5
jge 0x414e9a
test bl, bl
jne 0x4149c1
lea ecx, [ebp - 0xc4]
push ecx
lea esi, [ebp - 0xe4]
lea ecx, [ebp - 0x88]
call fcn.00427fc0
test al, al
je 0x4149c1
mov byte [ebp - 0x45], 1
mov edx, dword [ebp - 0x4c]
mov eax, dword [edx]
mov ebx, dword [ebp - 0x7c]
lea eax, [ebx + eax + 0x2f0]
mov eax, dword [eax]
sub eax, 0x10
push eax
call fcn.00405320
lea esi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0x50], esi
push 0x5b0bc8
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x38
call fcn.00401d90
lea ecx, [ebp - 0x88]
push ecx
lea edi, [ebp - 0x6c]
mov byte [ebp - 4], 0x39
call fcn.00428780
cmp dword [esi - 0xc], 0
mov ecx, dword [ebp - 0x6c]
jle 0x414a55
cmp dword [ecx - 0xc], 0
jle 0x414a55
mov eax, esi
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x414a46
test dx, dx
je 0x414a42
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x414a46
add eax, 4
add ecx, 4
test dx, dx
jne 0x414a20
xor eax, eax
jmp 0x414a4b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x414a55
mov byte [ebp - 0x45], 0
jmp 0x414a5f
cmp byte [ebp - 0x45], 0
jne 0x414e48
push 0x5b0bc8
lea ecx, [ebp - 0x68]
call fcn.00401d90
lea esi, [ebp - 0x68]
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x3a
call fcn.004271b0
push 0x5b0bc8
lea ecx, [ebp - 0x5c]
call fcn.00401d90
lea edx, [ebp - 0x88]
push edx
lea edi, [ebp - 0x5c]
mov byte [ebp - 4], 0x3b
call fcn.00428780
push str._url:
lea ecx, [ebp - 0x9c]
call fcn.00401d90
push eax
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x3c
mov ecx, dword [eax]
lea edx, [ebx + ecx + 0x2d4]
push edx
lea eax, [ebp - 0x8c]
push eax
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0xc4]
push ecx
push eax
lea edx, [ebp - 0x90]
push edx
mov byte [ebp - 4], 0x3d
call fcn.0041bac0
add esp, 0xc
push str._file:
push eax
lea eax, [ebp - 0xd4]
push eax
mov byte [ebp - 4], 0x3e
call fcn.0041bb80
add esp, 0xc
lea ecx, [ebp - 0x88]
push ecx
push eax
lea edx, [ebp - 0xcc]
push edx
mov byte [ebp - 4], 0x3f
call fcn.0041bac0
add esp, 0xc
push str._message:
push eax
lea eax, [ebp - 0xb8]
push eax
mov byte [ebp - 4], 0x40
call fcn.0041bb80
add esp, 0xc
lea ecx, [ebp - 0xe4]
push ecx
push eax
lea edx, [ebp - 0xa4]
push edx
mov byte [ebp - 4], 0x41
call fcn.0041bac0
add esp, 0xc
push str._fileinfo:
push eax
lea eax, [ebp - 0xac]
push eax
mov byte [ebp - 4], 0x42
call fcn.0041bb80
add esp, 0xc
mov ecx, esi
push ecx
push eax
lea edx, [ebp - 0xb0]
push edx
mov byte [ebp - 4], 0x43
call fcn.0041bac0
add esp, 0xc
push str._md5:
push eax
lea eax, [ebp - 0x94]
push eax
mov byte [ebp - 4], 0x44
call fcn.0041bb80
add esp, 0xc
mov ecx, edi
push ecx
push eax
lea edx, [ebp - 0x58]
push edx
mov byte [ebp - 4], 0x45
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x47
mov eax, dword [ebp - 0x94]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414bd5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x48
mov eax, dword [ebp - 0xb0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414bfb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x49
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414c21
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x4a
mov eax, dword [ebp - 0xa4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414c47
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x4b
mov eax, dword [ebp - 0xb8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414c6d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x4c
mov eax, dword [ebp - 0xcc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414c93
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x4d
mov eax, dword [ebp - 0xd4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414cb9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x4e
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414cdf
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x4f
mov eax, dword [ebp - 0x8c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414d05
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x50
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414d2b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b0bc8
lea ecx, [ebp - 0x78]
call fcn.00401d90
mov esi, eax
push 0x5b1ab0
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0x51
call fcn.00401d90
push esi
lea ecx, [ebp - 0x58]
push ecx
lea edx, [ebp - 0x80]
push edx
push eax
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x52
mov ecx, dword [eax]
add ecx, 0x16c
push ecx
lea edx, [ebp - 0x98]
push edx
mov ecx, 1
call fcn.004392c0
mov byte [ebp - 4], 0x51
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414d9f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x50
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414dc2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x88]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edx, dword [ebp - 0xc4]
push edx
call dword [sym.imp.WININET.dll_DeleteUrlCacheEntryW]
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414dff
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0x5c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414e22
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x39
mov eax, dword [ebp - 0x68]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414e45
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x50]
inc dword [ebp - 0x60]
mov byte [ebp - 4], 0x38
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414e6e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
mov byte [ebp - 4], 0x37
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414e8e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp byte [ebp - 0x45], 0
je 0x414990
jmp 0x414ea2
test bl, bl
je 0x41620e
push 0x5b1ab8
lea ecx, [ebp - 0x90]
call fcn.00401d90
mov esi, eax
push 0x5b1ac0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x53
call fcn.00401d90
lea ecx, [ebp - 0x88]
push ecx
push eax
lea edx, [ebp - 0x9c]
push edx
mov byte [ebp - 4], 0x54
call fcn.0041bac0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0x84]
push eax
mov byte [ebp - 4], 0x55
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x70]
push ecx
push eax
lea edx, [ebp - 0x78]
mov bl, 0x56
push edx
mov byte [ebp - 4], bl
call fcn.0041bac0
add esp, 0xc
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x57
call fcn.004050b0
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414f3d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x55
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414f63
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x54
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414f89
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x53
mov eax, dword [ebp - 0x8c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414faf
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414fd5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp byte [ebp - 0x51], 0
jne 0x414ff6
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx]
lea edx, [ebp - 0x80]
push edx
lea ecx, [eax + 0x170]
push ecx
add eax, 0x294
push eax
call fcn.00436f90
lea ecx, [ebp - 0xa0]
call fcn.00404e00
mov ecx, eax
call fcn.00404e80
mov edx, dword [eax]
mov eax, dword [edx - 0xc]
test eax, eax
jle 0x415338
push 0x5b1ab8
lea ecx, [ebp - 0x90]
call fcn.00401d90
mov esi, eax
push 0x5b1ac0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x58
call fcn.00401d90
lea ecx, [ebp - 0x88]
push ecx
push eax
lea edx, [ebp - 0x9c]
push edx
mov byte [ebp - 4], 0x59
call fcn.0041bac0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0x84]
push eax
mov byte [ebp - 4], 0x5a
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0xa0]
push ecx
push eax
lea edx, [ebp - 0x78]
mov bl, 0x5b
push edx
mov byte [ebp - 4], bl
call fcn.0041bac0
add esp, 0xc
push eax
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5c
call fcn.004050b0
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4150b6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x5a
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4150dc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x59
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415102
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x58
mov eax, dword [ebp - 0x8c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415128
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41514e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b0bc8
lea ecx, [ebp - 0x5c]
call fcn.00401d90
lea ecx, [ebp - 0xbc]
push ecx
lea edx, [ebp - 0x5c]
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x5d
call fcn.0043c280
test al, al
jne 0x415315
mov edi, dword [ebp - 0x4c]
mov edx, dword [edi]
mov eax, dword [ebp - 0x7c]
lea ecx, [eax + edx + 0x2d4]
push str._cmd:
push ecx
lea edx, [ebp - 0x9c]
push edx
call fcn.0041bb80
add esp, 0xc
lea ecx, [ebp - 0xa0]
push ecx
push eax
lea edx, [ebp - 0x84]
push edx
mov byte [ebp - 4], 0x5e
call fcn.0041bac0
add esp, 0xc
push 0x5b1ac4
push eax
lea eax, [ebp - 0x78]
push eax
mov byte [ebp - 4], 0x5f
call fcn.0041bb80
add esp, 0xc
lea ecx, [ebp - 0x5c]
push ecx
push eax
lea edx, [ebp - 0x58]
push edx
mov byte [ebp - 4], 0x60
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x62
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415209
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x63
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41522f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov bl, 0x64
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415256
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b0bc8
lea ecx, [ebp - 0x90]
call fcn.00401d90
mov esi, eax
push 0x5b1ae8
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x65
call fcn.00401d90
push esi
lea ecx, [ebp - 0x58]
push ecx
lea edx, [ebp - 0x80]
push edx
push eax
mov byte [ebp - 4], 0x66
mov eax, dword [edi]
add eax, 0x16c
push eax
lea ecx, [ebp - 0x98]
push ecx
mov ecx, 1
call fcn.004392c0
mov byte [ebp - 4], 0x65
mov eax, dword [ebp - 0x8c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4152c9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4152ee
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x5d
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
mov byte [ebp - 0x52], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415315
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x5c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415338
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x7c]
lea ecx, [eax + edx + 0x2e4]
lea edx, [ebp - 0x70]
push edx
call fcn.00439f90
push str.____Executing_offer_command:
lea ecx, [ebp - 0x84]
call fcn.00401d90
lea ecx, [ebp - 0x70]
push ecx
push eax
lea edx, [ebp - 0x78]
mov bl, 0x67
push edx
mov byte [ebp - 4], bl
call fcn.0041bac0
add esp, 0xc
mov esi, eax
mov byte [ebp - 4], 0x68
call fcn.00434f10
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4153a3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4153c9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b0bc8
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x60], 0
call fcn.00401d90
lea ecx, [ebp - 0x60]
push ecx
lea edx, [ebp - 0x6c]
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x69
call fcn.0043c280
test al, al
je 0x415ba5
cmp byte [ebp - 0x51], 0
jne 0x415b9b
push str.____Command_succeded._Calling__conversion_URL.
lea ecx, [ebp - 0x78]
call fcn.00401d90
mov esi, eax
mov byte [ebp - 4], 0x6a
call fcn.00434f10
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41543d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx]
mov edx, dword [ebp - 0x7c]
cmp dword [eax + edx + 0x115c], 0
mov dword [ebp - 0x68], 0
jle 0x4158f4
mov ebx, edx
mov dword [ebp - 0x50], ebx
nop
mov eax, dword [ebx + eax + 0x10c0]
sub eax, 0x10
push eax
call fcn.00405320
add esp, 4
add eax, 0x10
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0x6b
mov ecx, str.REG_SZ
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4154a8
test dx, dx
je 0x4154a4
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4154a8
add eax, 4
add ecx, 4
test dx, dx
jne 0x415482
xor eax, eax
jmp 0x4154ad
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4158af
mov edi, dword [ebp - 0x4c]
mov eax, dword [edi]
lea eax, [ebx + eax + 0x10bc]
mov eax, dword [eax]
sub eax, 0x10
push eax
call fcn.00405320
lea esi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0x9c], esi
mov byte [ebp - 4], 0x6c
mov ecx, dword [edi]
lea eax, [ebx + ecx + 0x10c4]
mov eax, dword [eax]
sub eax, 0x10
push eax
call fcn.00405320
lea edi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0x8c], edi
mov edx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x6d
mov eax, dword [edx]
lea eax, [ebx + eax + 0x10c8]
mov eax, dword [eax]
sub eax, 0x10
push eax
call fcn.00405320
add eax, 0x10
add esp, 4
mov dword [ebp - 0x90], eax
add eax, 0xfffffff0
mov byte [ebp - 4], 0x6e
push eax
mov dword [ebp - 0x5c], eax
call fcn.00405320
add eax, 0x10
add esp, 4
mov dword [ebp - 0x58], eax
add edi, 0xfffffff0
mov byte [ebp - 4], 0x6f
push edi
mov dword [ebp - 0xd0], edi
call fcn.00405320
lea edi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0x78], edi
add esi, 0xfffffff0
mov byte [ebp - 4], 0x70
push esi
mov dword [ebp - 0x74], esi
call fcn.00405320
lea esi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0x84], esi
lea ecx, [ebp - 0x78]
push ecx
lea edx, [ebp - 0x84]
push edx
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x71
call fcn.0043d1b0
mov byte [ebp - 0x51], al
lea eax, [esi - 0x10]
mov byte [ebp - 4], 0x70
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4155ae
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi - 0x10]
mov byte [ebp - 4], 0x6f
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4155ce
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x6e
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4155f1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp byte [ebp - 0x51], 0
jne 0x41584c
push str._value:
lea ecx, [ebp - 0xe8]
call fcn.00401d90
mov esi, eax
push str._Key:
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x72
call fcn.00401d90
push eax
lea ecx, [ebp - 0x9c]
push ecx
lea edx, [ebp - 0xa4]
push edx
mov byte [ebp - 4], 0x73
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x8c]
push ecx
push eax
lea edx, [ebp - 0xac]
push edx
mov byte [ebp - 4], 0x74
call fcn.0041bac0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0xb0]
push eax
mov byte [ebp - 4], 0x75
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x90]
push ecx
push eax
lea edx, [ebp - 0x94]
push edx
mov byte [ebp - 4], 0x76
call fcn.0041bac0
add esp, 0xc
mov esi, eax
push str.Error_adding_registry_entry.
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0x77
call fcn.00401d90
mov ebx, eax
push 0x5b1c00
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0x78
call fcn.00401d90
mov edi, eax
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x79
mov eax, dword [eax]
mov eax, dword [eax + 0x294]
sub eax, 0x10
push eax
call fcn.00405320
add eax, 0x10
add esp, 4
mov dword [ebp - 0x58], eax
push esi
push ebx
push edi
lea ecx, [ebp - 0x58]
push ecx
lea edx, [ebp - 0x98]
push edx
mov ebx, 1
mov byte [ebp - 4], 0x7a
call fcn.00435800
mov byte [ebp - 4], 0x79
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415715
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x78
mov eax, dword [ebp - 0xd4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41573b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x77
mov eax, dword [ebp - 0xcc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415761
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x76
mov eax, dword [ebp - 0x94]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415787
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x75
mov eax, dword [ebp - 0xb0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4157ad
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x74
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4157d3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x73
mov eax, dword [ebp - 0xa4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4157f9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x72
mov eax, dword [ebp - 0xb8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41581f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x6e
mov eax, dword [ebp - 0xe8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415845
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ebx, dword [ebp - 0x50]
mov byte [ebp - 0x52], 0
mov eax, dword [ebp - 0x5c]
mov byte [ebp - 4], 0x6d
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41586c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x6c
mov eax, dword [ebp - 0xd0]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41588f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0x74]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4158af
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4158d2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x68]
mov eax, dword [edx]
mov edx, dword [ebp - 0x7c]
inc ecx
add ebx, 0x10
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x50], ebx
cmp ecx, dword [eax + edx + 0x115c]
jl 0x415460
cmp byte [ebp - 0x52], 1
jne 0x415b9b
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x41590e
cmp eax, 0x65
jne 0x415b9b
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x415928
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x58], eax
lea esi, [ebp - 0x44]
call fcn.00453070
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x7c
call fcn.00404e00
mov ecx, eax
call fcn.00404e80
mov ecx, dword [eax]
cmp dword [ecx - 0xc], 0
jle 0x415a13
push str.Send_Offer_Conversion_Notice
lea edx, [ebp - 0x58]
push edx
mov edx, dword [ebp - 0xe0]
mov ecx, esi
call fcn.00453460
test eax, eax
jne 0x415a13
push 0x5b0bc8
lea ecx, [ebp - 0x74]
call fcn.00401d90
mov esi, eax
mov bl, 0x7d
push 0x5b1c44
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], bl
call fcn.00401d90
push esi
lea ecx, [ebp - 0xd8]
push ecx
lea edx, [ebp - 0x80]
push edx
push eax
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x7e
mov ecx, dword [eax]
add ecx, 0x16c
push ecx
lea edx, [ebp - 0x98]
push edx
mov ecx, 1
call fcn.004392c0
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4159f0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x7c
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415a13
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b0bc8
lea ecx, [ebp - 0xd0]
call fcn.00401d90
mov esi, eax
push 0x5b0f34
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x7f
call fcn.00401d90
mov edi, eax
mov bl, 0x80
push 0x5b1c4c
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], bl
call fcn.00401d90
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x7c]
push esi
mov byte [ebp - 4], 0x81
mov ecx, dword [ecx]
lea edx, [ecx + edx + 0x2d4]
push edx
push edi
push eax
add ecx, 0x16c
push ecx
lea eax, [ebp - 0x98]
push eax
mov ecx, 1
call fcn.004392c0
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415a9b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x7f
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415abe
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x7c
mov eax, dword [ebp - 0xd0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415ae4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b1974
lea ecx, [ebp - 0x74]
call fcn.00401d90
mov esi, eax
mov bl, 0x82
push 0x5b0bc8
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], bl
call fcn.00401d90
mov ecx, dword [ebp - 0x4c]
push esi
push eax
mov byte [ebp - 4], 0x83
mov ecx, dword [ecx]
lea edx, [ebp - 0x80]
push edx
lea eax, [ecx + 0x170]
push eax
add ecx, 0x294
push ecx
call fcn.00437350
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415b49
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x7c
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415b6c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x7b
call fcn.00453120
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415b9b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [ebp - 0x60], 0
je 0x4161cb
mov edx, dword [ebp - 0x60]
push 0xa
lea ecx, [ebp - 0x34]
push ecx
push edx
call fcn.0056ee1a
add esp, 0xc
call fcn.0046aab1
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x415bd1
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x68], eax
lea esi, [ebp - 0x68]
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x84
call fcn.004271b0
push 0x5b0bc8
lea ecx, [ebp - 0x5c]
call fcn.00401d90
lea ecx, [ebp - 0x88]
push ecx
lea edi, [ebp - 0x5c]
mov byte [ebp - 4], 0x85
call fcn.00428780
push str.____Command_failed_or_canceled_by_user.
lea ecx, [ebp - 0x64]
call fcn.00401d90
mov esi, eax
mov byte [ebp - 4], 0x86
call fcn.00434f10
mov byte [ebp - 4], 0x85
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x415c4d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str._md5:
lea ecx, [ebp - 0xbc]
call fcn.00401d90
mov esi, eax
push str._fileinfo:
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x87
call fcn.00401d90
mov edi, eax
push 0x5b1ac4
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x88
call fcn.00401d90
mov ebx, eax
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x89
call fcn.0041b840
mov dword [ebp - 0xd0], eax
push str._ret_code:
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x8a
call fcn.00401d90
mov dword [ebp - 0x74], eax
push str._cmd:
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x8b
call fcn.00401d90
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x7c]
mov byte [ebp - 4], 0x8c
mov eax, dword [edx]
lea eax, [ecx + eax + 0x2d4]
mov eax, dword [eax]
sub eax, 0x10
push eax
call fcn.00405320
add eax, 0x10
add esp, 4
mov dword [ebp - 0x58], eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x64]
push edx
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x94]
push ecx
call fcn.0041bac0
add esp, 0xc
lea edx, [ebp - 0x70]
push edx
push eax
lea eax, [ebp - 0xcc]
push eax
mov byte [ebp - 4], 0x8e
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x8f
mov ecx, dword [ebp - 0x74]
push ecx
push eax
lea edx, [ebp - 0xd4]
push edx
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x90
mov ecx, dword [ebp - 0xd0]
push ecx
push eax
lea edx, [ebp - 0x90]
push edx
call fcn.0041bac0
add esp, 0xc
push ebx
push eax
lea eax, [ebp - 0x8c]
push eax
mov byte [ebp - 4], 0x91
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x6c]
push ecx
push eax
lea edx, [ebp - 0x9c]
push edx
mov byte [ebp - 4], 0x92
call fcn.0041bac0
add esp, 0xc
push edi
push eax
lea eax, [ebp - 0x84]
push eax
mov byte [ebp - 4], 0x93
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x68]
push ecx
push eax
lea edx, [ebp - 0x78]
push edx
mov byte [ebp - 4], 0x94
call fcn.0041bac0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0xe8]
push eax
mov byte [ebp - 4], 0x95
call fcn.0041bac0
add esp, 0xc
lea ecx, [ebp - 0x5c]
push ecx
push eax
lea edx, [ebp - 0x60]
push edx
mov byte [ebp - 4], 0x96
call fcn.0041bac0
add esp, 0xc
mov byte [ebp - 4], 0x98
mov eax, dword [ebp - 0xe8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415e03
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x99
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415e26
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x9a
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415e4c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x9b
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415e72
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x9c
mov eax, dword [ebp - 0x8c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415e98
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x9d
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415ebe
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x9e
mov eax, dword [ebp - 0xd4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415ee4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x9f
mov eax, dword [ebp - 0xcc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415f0a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa0
mov eax, dword [ebp - 0x94]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415f30
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa1
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415f53
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa2
mov eax, dword [ebp - 0xb0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415f79
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa3
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415f9f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa4
mov eax, dword [ebp - 0xa4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415fc5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa5
mov eax, dword [ebp - 0xb8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415feb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa6
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41600e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0xbc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416034
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5b0bc8
lea ecx, [ebp - 0x74]
call fcn.00401d90
mov esi, eax
push 0x5b1cc4
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xa8
call fcn.00401d90
mov ebx, dword [ebp - 0x4c]
push esi
lea ecx, [ebp - 0x60]
push ecx
lea edx, [ebp - 0x80]
push edx
push eax
mov byte [ebp - 4], 0xa9
mov eax, dword [ebx]
add eax, 0x16c
push eax
lea ecx, [ebp - 0x98]
push ecx
mov ecx, 1
call fcn.004392c0
mov byte [ebp - 4], 0xa8
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4160a1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4160c4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp - 0x74]
call fcn.0041b840
mov esi, eax
mov byte [ebp - 4], 0xaa
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
push eax
call fcn.00405320
lea edi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0x64], edi
push esi
lea edx, [ebp - 0x64]
push edx
mov byte [ebp - 4], 0xab
mov eax, dword [ebx]
lea ecx, [ebp - 0x80]
push ecx
lea edx, [eax + 0x170]
push edx
add eax, 0x294
push eax
call fcn.00437a20
lea eax, [edi - 0x10]
mov byte [ebp - 4], 0xaa
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41612c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41614f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x88]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 0x85
mov eax, dword [ebp - 0x60]
add eax, 0xfffffff0
mov byte [ebp - 0x52], 0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x416183
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x84
mov eax, dword [ebp - 0x5c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4161a6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0x68]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4161e1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x4161e1
cmp byte [ebp - 0x52], 0
je 0x4161e1
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x7c]
mov byte [eax + edx + 0x1166], 1
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416204
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp byte [ebp - 0x45], 0
jne 0x4162ac
push 0x5b1200
lea ecx, [ebp - 0x64]
mov byte [ebp - 0x52], 0
call fcn.00401d90
mov esi, eax
mov byte [ebp - 4], 0xac
mov eax, dword [ebp - 0xe4]
add eax, 0xfffffff0
push eax
call fcn.00405320
lea edi, [eax + 0x10]
add esp, 4
mov dword [ebp - 0xbc], edi
mov ebx, dword [ebp - 0x4c]
push esi
lea ecx, [ebp - 0xbc]
push ecx
mov byte [ebp - 4], 0xad
mov eax, dword [ebx]
lea edx, [ebp - 0x80]
push edx
lea ecx, [eax + 0x170]
push ecx
add eax, 0x294
push eax
call fcn.00437a20
lea eax, [edi - 0x10]
mov byte [ebp - 4], 0xac
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x416287
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4162af
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x4162af
mov ebx, dword [ebp - 0x4c]
push 0x5b0bc8
lea ecx, [ebp - 0x74]
call fcn.00401d90
mov esi, eax
push 0x5b0bc8
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xae
call fcn.00401d90
mov edi, eax
push 0x5b1ccc
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0xaf
call fcn.00401d90
push esi
push edi
lea ecx, [ebp - 0x80]
push ecx
mov byte [ebp - 4], 0xb0
mov edx, dword [ebx]
push eax
add edx, 0x16c
push edx
lea eax, [ebp - 0x98]
push eax
mov ecx, 7
call fcn.004392c0
mov byte [ebp - 4], 0xaf
mov eax, dword [ebp - 0xbc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416330
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xae
mov eax, dword [ebp - 0x64]
add eax, 0xfffffff0
or esi, 0xffffffff
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416355
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416377
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebx]
add dword [eax + 0xb7440], esi
mov byte [ebp - 4], 0x36
mov eax, dword [ebp - 0xe4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4163a4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x10c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4163c9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x70]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4163eb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0xa0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416410
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0xb4]
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416432
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0xe0]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416457
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0xdc]
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416479
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x88]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41649e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x80]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4164c0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0xd8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4164e5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0xc4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41650a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0xc0]
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41652c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0xf8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416551
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0xfc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, esi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x416572
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], esi
mov eax, dword [ebp - 0x98]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
lock xadd dword [ecx], esi
dec esi
test esi, esi
jg 0x416594
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov al, byte [ebp - 0x52]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00550891
mov esp, ebp
pop ebp
ret