Function at 0x10011080
Capabilities:
Encode data using xor
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x48
mov esi, esp
mov eax, dword [0x1006e9c0]
xor eax, ebp
mov dword [esi + 0x40], eax
cmp dword [0x10071c78], 0xa
mov edx, dword [0x10071c74]
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x100676d0]
mov edi, edx
not edi
or edi, edx
mov edx, dword [0x100676d4]
and edi, edx
sub edi, edx
and ecx, 1
cmp ecx, edi
setne cl
sete dl
mov ah, al
or ah, dl
add ah, dl
or cl, al
add cl, ah
and al, dl
not al
add al, cl
test al, 1
je 0x10011375
push eax
mov dword [esi + 8], esp
push eax
mov dword [esi + 0x18], esp
push eax
mov dword [esi + 0x30], esp
push eax
mov dword [esi + 0x2c], esp
push eax
mov edi, esp
push eax
mov ebx, esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x28], eax
mov esp, eax
push eax
mov dword [esi + 0x34], esp
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e314
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 0x1c
movaps xmm0, xmmword [0x1005f1b0]
movups xmmword [esp + 4], xmm0
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call eax
mov dword [ebx], eax
mov dword [esi + 0x20], ebx
mov eax, dword [ebx]
cmp eax, 0xffffffff
mov dword [esi + 0x38], edi
sete byte [edi]
push eax
mov dword [esi + 0x10], esp
mov ecx, dword [0x100676a8]
mov dword [esi + 4], ecx
mov edx, ecx
not edx
mov dword [esi], edx
and edx, 0x36a15a5d
mov ebx, ecx
xor ebx, 0xc95ea5a2
mov eax, ecx
and eax, 0xc95ea5a2
lea edi, [edx + ebx]
add edi, eax
add edx, edi
add edx, 1
mov edi, ecx
and edi, 0x36a15a5d
mov ecx, eax
sub ecx, edi
add ecx, ebx
add eax, ecx
add eax, 0x36a15a5e
or eax, edx
mov ecx, eax
xor ecx, 0xc95ea5a2
xor eax, 0x36a15a5d
add eax, eax
lea edx, [eax + ecx]
add eax, ecx
add eax, 1
mov edi, dword [0x100676ac]
mov ecx, eax
and ecx, edi
add edx, edx
add edx, 2
sub ecx, edx
mov edx, edi
not edx
mov ebx, eax
or ebx, edx
lea ecx, [ecx + ebx*2]
mov ebx, eax
xor ebx, edx
not ebx
add ebx, ecx
lea ecx, [ebx + eax]
mov dword [esi + 0x14], ecx
add eax, ebx
add eax, 1
mov ecx, eax
not ecx
sub eax, ecx
sub eax, ecx
add eax, ecx
mov ebx, dword [esi + 0x14]
add ebx, ebx
add ebx, 2
sub eax, ebx
add eax, ecx
mov ecx, 0xb2252d9b
sub ecx, eax
mov eax, ecx
xor eax, 0x4ddad266
mov ebx, ecx
or ecx, 0xb2252d99
add ecx, eax
and ebx, 0x4ddad266
lea eax, [ebx + ecx]
add eax, 0x4ddad266
mov dword [esi + 0x14], eax
mov ebx, dword [esi + 4]
mov ecx, ebx
and ecx, edi
mov dword [esi + 0xc], ecx
mov ecx, dword [esi]
or ecx, edi
or ebx, edi
mov eax, edi
mov dword [esi + 0x1c], edx
lea edi, [edx + edx]
add edi, eax
add edi, 1
or eax, edx
mov edx, dword [esi]
and eax, edx
sub eax, edx
sub eax, dword [esi + 0xc]
add ecx, eax
add ecx, ebx
add ecx, 1
mov edx, dword [esi + 4]
mov eax, edx
and eax, edi
mov ebx, dword [esi]
lea eax, [ebx + eax*2]
or edi, ebx
sub eax, edi
or eax, ecx
mov edi, dword [esi + 0x14]
mov ecx, edi
not ecx
neg eax
and ecx, eax
sub ecx, edi
and eax, edi
add eax, ecx
mov edi, ebx
sub edi, edx
sub edi, edx
lea eax, [eax + ebx*2]
sub edi, eax
mov eax, edx
mov edx, dword [esi + 0x1c]
and eax, edx
mov ecx, ebx
or ecx, edx
sub ecx, eax
mov eax, ebx
xor eax, edx
add eax, ecx
mov ecx, eax
or edx, dword [esi + 4]
add eax, edx
add ecx, edx
add ecx, 0x345f0828
add ecx, ecx
sub ecx, eax
sub ecx, eax
add ecx, eax
add edi, 0xdf84867b
not edi
lea eax, [edi + ecx]
add eax, 0x1db18820
not eax
mov ecx, 0x95b313d2
sub ecx, eax
and ecx, 0x95b313d2
sub ecx, eax
add ecx, eax
add ecx, 0x6a4cec2d
add eax, 0x6a4cec2d
or eax, 0x95b313d2
sub eax, ecx
add eax, 1
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
push eax
mov dword [esi + 0x14], esp
push eax
mov dword [esi + 0x1c], esp
push eax
mov dword [esi + 4], esp
mov edx, dword [0x10071c70]
mov eax, dword [0x100676e4]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10071c6c], eax
setge ah
setl al
mov edi, edx
and edi, 1
lea edi, [edx + edi*2]
mov ebx, edx
not ebx
add edi, ebx
add edi, ebx
add edi, 0xffffffff
imul edi, edx
mov edx, dword [0x100676e8]
mov ebx, edx
not ebx
mov ecx, dword [0x100676ec]
and ebx, ecx
add ebx, edx
or edx, ecx
sub ebx, edx
and edi, 1
cmp edi, ebx
mov edi, dword [esi + 4]
sete cl
mov edx, eax
and dl, cl
add dl, al
and ah, cl
add ah, dl
mov edx, eax
xor dl, cl
add dl, ah
or al, cl
add al, dl
mov dword [edi], 0x2341fe2c
test al, 1
jne 0x10012750
push eax
push eax
push eax
push eax
push eax
mov edi, esp
push eax
mov ebx, esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
push eax
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e314
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 0x1c
movaps xmm0, xmmword [0x1005f1b0]
movups xmmword [esp + 4], xmm0
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call eax
mov dword [ebx], eax
mov eax, dword [ebx]
cmp eax, 0xffffffff
sete byte [edi]
push eax
mov dword [esi + 0x14], esp
mov edx, dword [0x100676a8]
mov dword [esi + 4], edx
mov ecx, edx
not ecx
mov dword [esi], ecx
mov eax, ecx
and eax, 0x36a15a5d
add eax, ecx
mov ecx, edx
and ecx, 0x36a15a5d
lea eax, [eax + ecx*2]
mov ecx, edx
xor ecx, 0xc95ea5a2
sub eax, ecx
mov ecx, edx
and ecx, 0xc95ea5a2
mov ebx, edx
or ebx, 0xc95ea5a2
add ebx, ecx
lea edi, [edx + edx]
or edi, 0x6d42b4ba
sub ebx, edi
mov edi, dword [esi]
or edi, 0xc95ea5a2
add edi, ebx
not ecx
add ecx, ecx
sub edi, ecx
add eax, 0xc95ea5a3
add edi, 0xa3e40f17
or edi, eax
mov eax, edi
xor eax, 0x495ea5a2
xor edi, 0x36a15a5d
lea eax, [edi + eax*2]
lea eax, [eax + edi*2]
add eax, 2
mov edi, dword [0x100676ac]
mov dword [esi + 8], edi
not edi
or eax, edi
add eax, 0xb2252d9b
mov ebx, eax
not ebx
mov ecx, ebx
and ecx, 0x4ddad266
mov edx, eax
sub edx, ecx
xor eax, 0x4ddad266
add eax, edx
or ebx, 0x4ddad266
add eax, ebx
add eax, 0x4ddad267
mov edx, dword [esi]
mov ebx, edx
and ebx, dword [esi + 8]
mov ecx, ebx
sub ecx, edx
mov edx, dword [esi]
xor edx, dword [esi + 8]
add edx, ecx
mov ecx, dword [esi]
or ecx, edi
mov dword [esi + 0x10], ecx
add edx, ecx
lea ecx, [ebx + edx]
add ecx, 1
mov dword [esi + 0x18], ecx
mov ebx, edi
mov edx, dword [esi + 8]
or ebx, edx
mov ecx, dword [esi + 4]
and ebx, ecx
sub ebx, edi
or edx, ecx
sub ebx, edx
sub ebx, dword [esi]
mov ecx, dword [esi + 0x10]
lea ecx, [ebx + ecx*2]
or ecx, dword [esi + 0x18]
lea edx, [ecx + ecx]
not ecx
lea edx, [edx + ecx*2]
sub ecx, edx
not eax
add eax, ecx
lea ecx, [eax + eax]
sub eax, ecx
lea ecx, [eax + 0x413dface]
mov edx, ecx
and edx, dword [esi + 4]
add eax, edx
add eax, 0x413dface
mov ebx, dword [esi]
add eax, ebx
mov edx, ecx
not edx
add edx, eax
and ecx, ebx
lea eax, [edx + ecx]
mov dword [esi + 8], eax
add ecx, edx
add ecx, 1
mov eax, ecx
xor ecx, 0xbec20531
mov edx, dword [esi + 8]
lea ecx, [ecx + edx*2]
add ecx, 2
not eax
add eax, eax
or eax, 0x7d840a62
add eax, ecx
mov ecx, ebx
and ecx, edi
add ecx, ecx
sub ecx, edi
xor edi, ebx
add edi, ecx
add edi, dword [esi + 0x10]
mov ecx, dword [esi + 4]
add ecx, edi
add ecx, 1
not ecx
lea edx, [ecx + ecx]
sub edx, ecx
mov ecx, edx
not ecx
lea ecx, [edx + ecx*2]
sub eax, ecx
add eax, 1
mov ecx, eax
not ecx
mov edx, eax
xor edx, 0x5914ee0d
sub edx, eax
or ecx, 0x5914ee0d
add ecx, edx
or eax, 0xa6eb11f2
add eax, ecx
imul eax, eax, 0x7879111b
add eax, 0x9ad707a1
mov ecx, eax
xor ecx, 0xb10e5bf
mov edx, eax
or edx, 0xf4ef1a40
add edx, ecx
and eax, 0xb10e5bf
add eax, edx
imul eax, eax, 0x5e1eed
add eax, 0x5e1eed
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
push eax
push eax
push eax
mov eax, esp
mov ecx, dword [0x10067aa0]
mov edx, dword [0x10067aa4]
mov edi, ecx
xor edi, edx
mov ebx, ecx
or ebx, edx
not ebx
add ebx, edi
and ecx, edx
add ecx, ebx
add ecx, 0x2341fe2d
mov dword [eax], ecx
jmp 0x100110e7
mov eax, dword [0x10071c68]
cmp dword [0x10071c64], 0xa
setl cl
mov edx, eax
not edx
add edx, eax
add edx, eax
add edx, 0x574333f6
imul edx, eax
test dl, 1
sete al
or al, cl
je 0x100115d0
jmp 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0xdaa1ad91
mov eax, 0x5e9161fa
mov ecx, 0x31cc10a4
cmove eax, ecx
mov dword [edi], eax
mov eax, dword [0x10067838]
mov edx, dword [0x1006783c]
mov ecx, eax
not ecx
mov edi, ecx
and edi, edx
or eax, edx
mov edx, dword [0x10071c60]
not eax
add eax, edi
sub eax, ecx
add eax, 0xa
cmp dword [0x10071c5c], eax
setge al
setl cl
mov edi, edx
xor edi, 1
mov ebx, edx
or ebx, 0xfffffffe
add ebx, edi
mov edi, edx
and edi, 1
add ebx, edi
add ebx, 2
imul ebx, edx
test bl, 1
sete dl
mov ah, cl
and ah, bl
add ah, dl
or dl, cl
or cl, bl
mov edi, dword [esi + 4]
add dl, ah
add cl, dl
add cl, al
test cl, 1
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0xdaa1ad91
mov eax, 0x5e9161fa
mov ecx, 0x31cc10a4
cmove eax, ecx
mov dword [edi], eax
jmp 0x100115ff
mov eax, dword [esi + 0x14]
mov edi, dword [eax]
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e344
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esi + 0x20]
push dword [ecx]
call eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov eax, dword [esi + 0x1c]
mov dword [eax], edi
mov ecx, dword [0x10067a20]
mov edx, dword [0x10067a24]
mov eax, ecx
and eax, edx
not edx
add eax, edx
or edx, ecx
sub eax, edx
add eax, 0xa9ba3813
mov dword [ebx], eax
mov edx, dword [0x10071c58]
cmp dword [0x10071c54], 0xa
setge al
setl cl
lea ebx, [edx - 1]
imul ebx, edx
test bl, 1
mov ebx, dword [esi + 4]
sete dl
mov ah, cl
and ah, dl
and al, dl
add al, ah
add al, dl
or cl, dl
add cl, al
mov eax, dword [esi + 0x10]
mov dword [eax], 0x88189efa
test cl, 1
jne 0x100126c0
mov eax, dword [esi + 0x14]
mov edi, dword [eax]
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e344
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esi + 0x20]
push dword [ecx]
call eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov eax, dword [esi + 0x10]
mov dword [eax], 0x88189efa
mov eax, dword [esi + 0x1c]
mov dword [eax], edi
mov dword [ebx], 0xa9ba3813
jmp 0x100116a1
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e33b
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, dword [esi + 0x30]
mov ecx, dword [edi]
push 0
push dword [esi + 0x34]
push dword [ecx]
mov ecx, dword [esi + 0x18]
push dword [ecx]
mov ecx, dword [esi + 0x20]
push dword [ecx]
call eax
mov eax, dword [edi]
mov eax, dword [eax]
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov ebx, dword [0x100676b8]
mov edx, dword [0x100676bc]
mov dword [esi + 0x24], edx
not edx
mov edi, ebx
not edi
mov dword [esi], edi
and edi, edx
mov eax, ebx
xor eax, edx
add eax, edi
mov edi, ebx
mov dword [esi + 0xc], ebx
or edi, edx
not edi
add edi, eax
sub edi, dword [esi]
mov ecx, edi
and ecx, ebx
mov ebx, ecx
sub ebx, edi
mov eax, edi
xor eax, dword [esi + 0xc]
add eax, ebx
or edi, dword [esi]
add edi, eax
lea eax, [edi + ecx]
add ecx, edi
add ecx, 1
not ecx
lea edi, [ecx + eax*2]
add edi, 2
mov eax, edx
lea ecx, [edx + edx]
add edx, ecx
and eax, 0xa6c468ca
mov ebx, dword [esi + 0x24]
lea edx, [edx + ebx*2]
add edx, 2
and ebx, 0x593b9735
or ebx, eax
xor ebx, 0x593b9735
add ebx, edi
mov ecx, dword [esi]
lea eax, [ecx + ecx]
mov edi, dword [esi + 0xc]
lea eax, [eax + edi*2]
add eax, ecx
add eax, 2
not edx
mov ecx, eax
and ecx, edx
add ecx, ecx
sub ecx, eax
mov edi, eax
not edi
and edi, edx
sub ecx, edi
xor edx, eax
add edx, ecx
lea eax, [ebx + edx]
lea ecx, [ebx + edx]
add ecx, 0x49c1c354
or ecx, 0x394138ca
add eax, ecx
add eax, 0x49c1c354
not ecx
lea edx, [eax + ecx]
add eax, ecx
add eax, 0x394138cb
mov ecx, eax
xor ecx, 0xb63e3cae
add ecx, edx
add ecx, 0x394138cb
mov edx, eax
or edx, 0x49c1c351
add edx, ecx
not eax
or eax, 0xb63e3cae
add eax, edx
imul eax, eax, 0x7cfb0c8f
add eax, 0xf1757bc4
mov ecx, eax
xor ecx, 0x3429586d
mov edx, eax
or edx, 0xcbd6a792
add edx, ecx
and eax, 0x3429586d
add eax, edx
imul eax, eax, 0xf444926f
add eax, 0x5cd55e0d
mov edx, eax
and edx, 0x934f8142
mov ecx, eax
not ecx
mov edi, ecx
and edi, 0x6cb07ebd
sub edx, edi
mov edi, eax
and edi, 0x6cb07ebd
xor eax, 0x6cb07ebd
add eax, edx
or ecx, 0x6cb07ebd
add ecx, eax
lea eax, [edi + ecx]
add eax, 0xeb16ff17
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [0x10071c50]
mov edi, dword [0x100679f8]
mov edx, dword [0x100679fc]
mov ecx, edi
xor ecx, edx
not ecx
add ecx, edi
not edx
add ecx, edx
or edx, edi
add edx, edx
sub ecx, edx
add ecx, 0xa
cmp dword [0x10071c4c], ecx
setl cl
setge dl
mov edi, eax
and edi, 0xfffffffe
mov ebx, eax
or ebx, 1
add ebx, edi
mov edi, eax
xor edi, 0xfffffffe
add ebx, edi
add ebx, 2
imul ebx, eax
test bl, 1
sete al
and dl, al
or al, cl
add al, dl
or bl, cl
add bl, al
mov eax, dword [esi + 4]
mov dword [eax], 0xa9ba3813
add bl, 1
test bl, 1
jne 0x100126c0
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e33b
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, dword [esi + 0x30]
mov ecx, dword [edi]
push 0
push dword [esi + 0x34]
push dword [ecx]
mov ecx, dword [esi + 0x18]
push dword [ecx]
mov ecx, dword [esi + 0x20]
push dword [ecx]
call eax
mov eax, dword [edi]
mov eax, dword [eax]
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov edi, dword [0x100676bc]
mov edx, edi
not edx
lea ecx, [edx + edx]
sub ecx, edx
lea eax, [edi + edx*2]
mov dword [esi], eax
lea eax, [edi + edx*2]
add eax, 1
mov dword [esi + 0xc], eax
mov eax, edx
and eax, 0xa6c468ca
mov edx, edi
and edx, 0x593b9735
or edx, eax
mov edi, dword [0x100676b8]
mov dword [esi + 0x24], edi
mov eax, ecx
xor eax, edi
and eax, edi
mov ebx, eax
and ebx, 0xbe4abe4d
mov ecx, eax
mov edi, eax
not ecx
mov eax, ecx
and eax, 0x41b541b2
sub ebx, eax
or edi, 0x41b541b2
add edi, ebx
or ecx, 0x41b541b2
lea eax, [edi + ecx]
mov dword [esi + 0x3c], eax
lea eax, [ecx + edi]
add eax, 0x41b541b3
xor edx, 0x593b9735
mov ebx, eax
not ebx
mov edi, ebx
and edi, edx
mov ecx, dword [esi + 0x3c]
add edi, ecx
add edi, 0x41b541b3
add edi, edx
mov ecx, eax
xor ecx, edx
not ecx
add ecx, edi
sub ecx, ebx
and eax, edx
sub ecx, eax
mov eax, ecx
and eax, 0x41b541b2
add eax, ecx
not ecx
add eax, ecx
or ecx, 0x41b541b2
sub eax, ecx
mov edx, dword [esi + 0x24]
mov ecx, edx
not ecx
lea ecx, [edx + ecx*2]
add ecx, 1
mov ebx, dword [esi + 0xc]
not ebx
mov edx, dword [esi]
add edx, edx
add edx, 2
mov edi, ebx
sub edi, edx
add ebx, ebx
not ebx
lea edx, [ebx + edi]
add edx, 0xffffffff
and edx, ecx
add eax, edx
add eax, 0x80c81a1
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x394138ca
mov edi, eax
sub edi, edx
xor eax, 0x394138ca
add eax, edi
or ecx, 0x394138ca
add ecx, eax
imul eax, ecx, 0x7cfb0c8f
add eax, 0x8b574a97
mov ecx, eax
xor ecx, 0x86b6aa8c
mov edx, eax
or edx, 0x79495573
add edx, ecx
and eax, 0x86b6aa8c
lea ecx, [edx + eax]
add eax, edx
add eax, 0xad72ade2
mov edx, eax
and edx, 0x79495573
add ecx, edx
add ecx, 0xad72ade2
mov edx, eax
or edx, 0x79495573
sub ecx, edx
not eax
sub ecx, eax
add eax, eax
or eax, 0xd6d5518
add eax, ecx
imul eax, eax, 0xf444926f
mov ecx, eax
xor ecx, 0x7e668058
lea ecx, [ecx + eax*2]
not eax
lea ecx, [ecx + eax*2]
add eax, eax
or eax, 0x332ff4e
sub ecx, eax
lea eax, [ecx + 0x6fe37e0c]
mov edx, eax
and edx, 0x81997fa7
add ecx, edx
add ecx, 0x6fe37e0c
mov edx, eax
or edx, 0x81997fa7
sub ecx, edx
not edx
add edx, edx
sub ecx, edx
not eax
add eax, ecx
add eax, 0xfccd00b1
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov dword [eax], 0xa9ba3813
jmp 0x10011770
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x100677e0]
xor ecx, dword [0x100677e4]
mov edx, ecx
not edx
add ecx, edx
add ecx, 0x5914ee0f
cmp eax, ecx
mov eax, 0x5e9161fa
mov ecx, 0x5b1c05cb
cmove eax, ecx
mov edi, dword [0x10071c48]
cmp dword [0x10071c44], 0xa
lea ecx, [edi + edi]
mov edx, edi
not edx
lea edx, [edx + ecx + 0x2dda00aa]
setl cl
imul edx, edi
mov edi, dword [0x100677f0]
mov ebx, edi
not ebx
or ebx, edi
mov edi, dword [0x100677f4]
and ebx, edi
sub ebx, edi
and edx, 1
cmp edx, ebx
mov ebx, dword [esi + 4]
mov dword [ebx], eax
sete al
or al, cl
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x10067ac8]
mov edx, dword [0x10067acc]
mov edi, ecx
not edi
and edi, edx
not edx
or edx, ecx
lea ecx, [edi + edx]
add ecx, 0x5914ee0f
cmp eax, ecx
mov eax, 0x5e9161fa
mov ecx, 0x5b1c05cb
cmove eax, ecx
mov dword [ebx], eax
jmp 0x10011b60
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0xdaa1ad91
mov eax, 0x6900e6dd
mov ecx, 0x18d6360b
cmovl eax, ecx
mov dword [ebx], eax
mov ecx, dword [0x10067770]
mov edx, dword [0x10067774]
mov eax, ecx
and eax, edx
not edx
add eax, edx
or edx, ecx
sub eax, edx
mov ecx, dword [0x10071c40]
add eax, 0xa
cmp dword [0x10071c3c], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov edi, dword [0x10067ab0]
mov edx, dword [0x10067ab4]
mov ecx, edi
xor ecx, edx
not ecx
add ecx, edi
not edx
add ecx, edx
or edx, edi
add edx, edx
sub ecx, edx
add ecx, 0xdaa1ad91
cmp eax, ecx
mov eax, 0x6900e6dd
mov ecx, 0x18d6360b
cmovl eax, ecx
mov dword [ebx], eax
jmp 0x10011c12
mov eax, dword [0x10067920]
mov ecx, dword [0x10067924]
mov edx, eax
not edx
mov edi, edx
and edi, ecx
mov ebx, eax
xor ebx, ecx
sub ebx, edi
add ebx, edx
and eax, ecx
add eax, ebx
add eax, 0x62f8c5b3
mov edi, dword [esi + 4]
mov dword [edi], eax
mov eax, dword [0x10071c38]
cmp dword [0x10071c34], 0xa
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
jne 0x100126c0
mov dword [edi], 0x62f8c5b2
jmp 0x10011ca8
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov eax, dword [0x10071c30]
mov edi, dword [0x10067748]
mov edx, dword [0x1006774c]
mov ecx, edi
xor ecx, edx
not ecx
add ecx, edi
not edx
add ecx, edx
or edx, edi
add edx, edx
sub ecx, edx
add ecx, 0xa
cmp dword [0x10071c2c], ecx
setl cl
setge dl
mov edi, eax
and edi, 0xfffffffe
mov ebx, eax
or ebx, 1
add ebx, edi
mov edi, eax
xor edi, 0xfffffffe
add ebx, edi
add ebx, 2
imul ebx, eax
test bl, 1
sete al
and dl, al
or al, cl
add al, dl
or bl, cl
add bl, al
mov eax, dword [esi + 4]
mov dword [eax], 0x5333f29d
add bl, 1
test bl, 1
mov edx, dword [esi + 4]
jne 0x100126c0
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov dword [edx], 0x5333f29d
jmp 0x10011cfc
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x10067790]
mov edx, dword [0x10067794]
mov edi, ecx
xor edi, edx
mov ebx, ecx
and ecx, edx
not edx
and ebx, edx
sub edi, ebx
add edi, edx
add ecx, edi
add ecx, 0x394138cb
cmp eax, ecx
mov eax, 0xcb34a66b
mov ecx, 0x904b2d8f
cmovl eax, ecx
mov ecx, dword [esi + 4]
mov dword [ecx], eax
cmp dword [0x10071c28], 0xa
mov ecx, dword [0x10071c24]
setl dl
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete cl
or al, dl
xor dl, cl
not dl
add dl, cl
add al, dl
test al, 1
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x10067ab8]
mov edx, dword [0x10067abc]
mov edi, edx
not edi
and edi, ecx
sub edi, ecx
mov ebx, ecx
or ebx, edx
add ebx, edi
xor ecx, edx
not ecx
add ecx, ebx
add ecx, 0x394138cb
cmp eax, ecx
mov eax, 0xcb34a66b
mov ecx, 0x904b2d8f
cmovl eax, ecx
mov ecx, dword [esi + 4]
mov dword [ecx], eax
jmp 0x10011d8e
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0x5914ee0e
mov eax, 0x1e83d4d7
mov ecx, 0x80481a38
cmovl eax, ecx
mov dword [edi], eax
mov ecx, dword [0x10071c20]
cmp dword [0x10071c1c], 0xa
setl al
mov edi, ecx
and edi, 0xfffffffe
mov ebx, ecx
not ebx
mov edx, ebx
and edx, 1
or edx, edi
add edx, ecx
sub edx, ebx
mov edi, dword [esi + 4]
add edx, 1
imul edx, ecx
test dl, 1
sete cl
or cl, al
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0x5914ee0e
mov eax, 0x1e83d4d7
mov ecx, 0x80481a38
cmovl eax, ecx
mov dword [edi], eax
jmp 0x10011e3c
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x10067808]
mov edi, dword [0x1006780c]
mov edx, edi
not edx
and edx, ecx
add edx, edi
mov ebx, ecx
xor ebx, edi
or ecx, edi
sub edx, ebx
not ecx
add ecx, edx
add ecx, ebx
add ecx, 0x394138cb
mov ebx, dword [esi + 4]
cmp eax, ecx
mov eax, 0x5e9161fa
mov ecx, 0xde092af9
cmove eax, ecx
mov dword [ebx], eax
mov eax, dword [0x10067810]
mov ecx, dword [0x10067814]
mov edx, eax
and edx, ecx
add edx, edx
mov edi, ecx
not edi
and edi, eax
sub edx, edi
mov edi, eax
not edi
and edi, ecx
add edi, edx
sub edi, ecx
sub edi, ecx
xor eax, ecx
add eax, edi
add eax, 0xa
cmp dword [0x10071c18], eax
mov eax, dword [0x10071c14]
setl cl
mov edx, eax
not edx
imul edx, eax
neg edx
test dl, 1
sete al
or al, cl
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0x394138ca
mov eax, 0x5e9161fa
mov ecx, 0xde092af9
cmove eax, ecx
mov dword [ebx], eax
jmp 0x10011eab
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0x8ba543f7
mov eax, 0xf95b5e03
mov ecx, 0xbb04782a
cmovl eax, ecx
mov dword [ebx], eax
mov edx, dword [0x10071c10]
cmp dword [0x10071c0c], 0xa
setl al
setge ah
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dl
and ah, dl
mov dh, al
or dh, dl
add dh, ah
add dh, cl
and al, dl
not al
add al, dh
test al, 1
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov edx, dword [0x10067ae0]
mov edi, dword [0x10067ae4]
mov ecx, edx
xor ecx, edx
not ecx
and ecx, edi
xor ecx, edx
xor edx, edi
sub ecx, edx
add ecx, 0x8ba543f7
cmp eax, ecx
mov eax, 0xf95b5e03
mov ecx, 0xbb04782a
cmovl eax, ecx
mov dword [ebx], eax
jmp 0x10011f5b
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x10067880]
mov edx, dword [0x10067884]
mov edi, edx
not edi
and edi, ecx
mov ebx, ecx
not ebx
add ebx, edi
and ecx, edx
add ecx, ebx
add ecx, 0xb97dc551
cmp eax, ecx
mov eax, 0x798fd33d
mov ecx, 0xe141a045
cmovl eax, ecx
mov ecx, dword [esi + 4]
mov dword [ecx], eax
mov eax, dword [0x10067888]
mov ecx, dword [0x1006788c]
mov edi, eax
xor edi, ecx
not edi
add edi, eax
add edi, ecx
and eax, ecx
not eax
lea eax, [edi + eax*2]
add eax, 0xd
cmp dword [0x10071c08], eax
mov edx, dword [0x10071c04]
setl cl
mov edi, edx
and edi, 0xfffffffe
add edi, edx
mov eax, edx
xor eax, 0xfffffffe
add eax, edi
mov edi, edx
or edi, 0xfffffffe
sub eax, edi
add eax, 1
imul eax, edx
test al, 1
sete dl
mov ch, cl
xor ch, dl
or cl, dl
add dl, ch
add dl, cl
not ch
add ch, dl
add ch, al
test ch, 1
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov dword [esi], eax
mov edi, dword [0x10067ae8]
mov edx, dword [str.xZYb]
mov ebx, edi
not ebx
mov eax, ebx
and eax, edx
mov ecx, edi
xor ecx, edx
sub ecx, eax
add ecx, ebx
and edi, edx
lea eax, [edi + ecx]
add eax, 0xb97dc551
cmp dword [esi], eax
mov eax, 0x798fd33d
mov ecx, 0xe141a045
cmovl eax, ecx
mov ecx, dword [esi + 4]
mov dword [ecx], eax
jmp 0x10011fe6
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [str.Pkz2]
or ecx, dword [0x100678ac]
mov edx, ecx
not edx
add ecx, edx
add ecx, 0xb97dc551
cmp eax, ecx
mov eax, 0x5e9161fa
mov ecx, 0xfb38b965
cmove eax, ecx
mov dword [ebx], eax
mov eax, dword [0x100678b0]
mov edx, dword [0x100678b4]
mov ecx, eax
not ecx
mov edi, eax
or edi, ecx
and edi, edx
or eax, edx
not eax
add eax, edi
or ecx, edx
sub eax, ecx
mov ecx, dword [0x10071c00]
add eax, 0xa
cmp dword [0x10071bfc], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0xb97dc550
mov eax, 0x5e9161fa
mov ecx, 0xfb38b965
cmove eax, ecx
mov dword [ebx], eax
jmp 0x100120ce
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x100678d0]
mov edx, dword [0x100678d4]
mov edi, ecx
xor edi, edx
mov ebx, edx
not ebx
or ebx, ecx
add ebx, edi
not ecx
or ecx, edx
add ecx, ebx
add ecx, 0x8ba543f9
cmp eax, ecx
mov ecx, 0x5e9161fa
mov eax, 0x84707ca3
cmove ecx, eax
mov dword [esi], ecx
mov ecx, dword [0x100678d8]
mov edx, dword [0x100678dc]
mov edi, ecx
and edi, edx
mov ebx, ecx
or ebx, edx
not ebx
add ebx, edi
xor ecx, edx
mov edi, dword [0x10071bf8]
add ecx, ebx
add ecx, 0xb
cmp dword [0x10071bf4], ecx
setl byte [esi + 0xc]
lea edx, [edi - 1]
imul edx, edi
mov edi, dword [0x100678e0]
mov eax, dword [0x100678e4]
mov ecx, edi
xor ecx, eax
sub ecx, edi
mov ebx, eax
not ebx
or ebx, edi
add ebx, ecx
and edi, eax
lea eax, [edi + ebx]
add eax, 1
mov ebx, dword [esi + 4]
and edx, 1
cmp edx, eax
mov eax, dword [esi]
mov dword [ebx], eax
sete al
or al, byte [esi + 0xc]
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov edx, dword [0x10067af8]
mov edi, dword [0x10067afc]
mov ecx, edx
and ecx, edi
not edi
add ecx, edi
or edi, edx
sub ecx, edi
add ecx, 0x8ba543f7
cmp eax, ecx
mov eax, 0x5e9161fa
mov ecx, 0x84707ca3
cmove eax, ecx
mov dword [ebx], eax
jmp 0x1001215f
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [0x100678f8]
mov edx, dword [0x100678fc]
mov edi, ecx
xor edi, edx
mov ebx, ecx
or ebx, edx
not ebx
add ebx, edi
and ecx, edx
add ecx, ebx
add ecx, 0x88189efb
cmp eax, ecx
mov ecx, 0x5e9161fa
mov eax, 0x94afc374
cmove ecx, eax
mov dword [esi], ecx
mov edi, dword [0x10071bf0]
cmp dword [0x10071bec], 0xa
setl byte [esi + 0xc]
lea edx, [edi - 1]
imul edx, edi
mov ecx, dword [0x1006790c]
mov edi, ecx
not edi
mov eax, dword [0x10067908]
and edi, eax
sub edi, eax
mov ebx, eax
or ebx, ecx
add ebx, edi
xor eax, ecx
sub ebx, eax
and edx, 1
cmp edx, ebx
mov ecx, dword [esi + 4]
mov eax, dword [esi]
mov dword [ecx], eax
sete al
or al, byte [esi + 0xc]
jne 0x100126c0
mov eax, dword [esi + 8]
mov eax, dword [eax]
cmp eax, 0x88189efa
mov eax, 0x5e9161fa
mov edx, 0x94afc374
cmove eax, edx
mov dword [ecx], eax
jmp 0x10012240
mov eax, dword [0x10067948]
mov ecx, dword [0x1006794c]
mov edx, eax
xor edx, ecx
mov edi, eax
or edi, ecx
not edi
add edi, edx
and eax, ecx
add eax, edi
add eax, 0xa9ba3814
mov dword [ebx], eax
mov eax, dword [0x10067950]
mov ecx, dword [0x10067954]
mov edx, eax
mov edi, eax
xor edi, ecx
and eax, ecx
not ecx
and edx, ecx
sub edi, edx
add edi, ecx
add eax, edi
add eax, 0xb
mov ecx, dword [0x10071be8]
cmp dword [0x10071be4], eax
setl al
lea edx, [ecx - 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
jne 0x100126c0
mov dword [ebx], 0xa9ba3813
jmp 0x100122e2
mov eax, dword [esi + 0x38]
cmp byte [eax], 0
mov ecx, 0xdaa1ad91
mov eax, 0x88189efa
cmovne ecx, eax
mov dword [esi], ecx
mov edx, dword [0x10067970]
mov edi, dword [0x10067974]
mov eax, edx
or eax, edi
sub eax, edx
sub eax, edx
mov ecx, edi
not ecx
sub eax, ecx
or ecx, edx
lea eax, [eax + ecx*2]
not edx
or edx, edi
sub eax, edx
add eax, 0xa9ba3813
mov dword [esi + 0xc], eax
mov eax, dword [0x10071be0]
cmp dword [0x10071bdc], 0xa
setl byte [esi + 0x24]
lea edi, [eax + 1]
imul edi, eax
mov ecx, dword [0x10067980]
mov ebx, dword [0x10067984]
mov edx, ecx
and edx, ebx
mov eax, ecx
not eax
and eax, ebx
not ebx
or ebx, ecx
sub eax, edx
add ebx, eax
lea eax, [edx + ebx]
add eax, 1
mov edx, dword [esi + 4]
and edi, 1
cmp edi, eax
mov eax, dword [esi + 0x10]
mov ecx, dword [esi]
mov dword [eax], ecx
mov eax, dword [esi + 0xc]
mov dword [edx], eax
sete al
or al, byte [esi + 0x24]
mov eax, dword [esi + 0x1c]
mov dword [eax], 0
jne 0x100126c0
mov eax, dword [esi + 0x38]
cmp byte [eax], 0
mov eax, 0xdaa1ad91
mov ecx, 0x88189efa
cmovne eax, ecx
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, dword [0x10067b18]
mov ecx, eax
not ecx
or ecx, eax
mov eax, dword [0x10067b1c]
and ecx, eax
sub ecx, eax
add ecx, 0xa9ba3813
mov dword [edx], ecx
mov eax, dword [esi + 0x1c]
mov dword [eax], 0
jmp 0x1001234f
mov eax, dword [esi + 0x2c]
mov edi, dword [esi + 0x28]
mov dword [eax], edi
mov eax, dword [eax]
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e32d
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push edi
mov ecx, dword [esi + 0x20]
push dword [ecx]
call eax
test eax, eax
mov eax, 0x8ba543f7
mov ecx, 0x394138ca
cmove eax, ecx
mov ecx, dword [0x100679a0]
xor ecx, dword [0x100679a4]
mov ebx, dword [0x10071bd8]
mov edx, ebx
not edx
lea edi, [ebx + ebx]
add edi, edx
add edi, 0xc074b458
cmp dword [0x10071bd4], 0xa
setl byte [esi]
imul edi, ebx
mov edx, dword [0x100679b0]
mov ebx, edx
not ebx
or ebx, edx
mov edx, dword [0x100679b4]
and ebx, edx
sub ebx, edx
and edi, 1
cmp edi, ebx
mov edx, dword [esi + 0x10]
mov dword [edx], eax
mov eax, ecx
not eax
lea eax, [ecx + eax - 0x5645c7ec]
mov ecx, dword [esi + 4]
mov dword [ecx], eax
sete al
or al, byte [esi]
mov eax, dword [esi + 0x14]
mov dword [eax], 0
jne 0x100126c0
mov eax, dword [esi + 0x2c]
mov edi, dword [esi + 0x28]
mov dword [eax], edi
mov eax, dword [eax]
push 0x1006e320
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006e32d
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push edi
mov ecx, dword [esi + 0x20]
push dword [ecx]
call eax
mov ecx, dword [0x10067b20]
mov edx, dword [0x10067b24]
mov edi, ecx
not edi
and edi, edx
add edi, edi
mov ebx, edx
not ebx
or ebx, ecx
and ecx, edx
sub edx, edi
sub edx, ebx
not ecx
add ecx, edx
cmp eax, ecx
mov eax, 0x8ba543f7
mov ecx, 0x394138ca
cmove eax, ecx
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, dword [0x10067b28]
mov ecx, dword [0x10067b2c]
mov edx, ecx
not edx
and edx, eax
not eax
or eax, ecx
add eax, eax
lea eax, [eax + edx*2]
mov ecx, 0xa9ba3811
sub ecx, eax
mov eax, dword [esi + 4]
mov dword [eax], ecx
mov eax, dword [esi + 0x14]
mov dword [eax], 0
jmp 0x10012436
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x28]
mov dword [eax], ecx
mov eax, dword [eax]
push dword [eax]
call fcn.100553b0
add esp, 4
mov ecx, dword [esi + 0x18]
mov dword [ecx], eax
cmp dword [ecx], 0
mov eax, 0xb97dc550
mov ecx, 0x394138ca
cmove eax, ecx
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, dword [0x100679c8]
mov edx, dword [0x100679cc]
mov ecx, edx
not ecx
and ecx, eax
add ecx, edx
mov edi, eax
xor edi, edx
sub ecx, edi
or eax, edx
not eax
add eax, ecx
add eax, edi
add eax, 0xa9ba3814
mov dword [ebx], eax
mov eax, dword [0x100679d0]
mov ecx, dword [0x100679d4]
mov edx, eax
and edx, ecx
add edx, edx
mov edi, ecx
not edi
and edi, eax
sub edx, edi
mov edi, eax
not edi
and edi, ecx
add edi, edx
sub edi, ecx
sub edi, ecx
xor eax, ecx
add eax, edi
add eax, 0xa
mov ecx, dword [0x10071bd0]
cmp dword [0x10071bcc], eax
setl al
mov edx, ecx
not edx
imul edx, ecx
neg edx
test dl, 1
sete cl
or cl, al
mov eax, dword [esi + 0x14]
mov dword [eax], 0
jne 0x100126c0
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x28]
mov dword [eax], ecx
mov eax, dword [eax]
push dword [eax]
call fcn.100553b0
add esp, 4
mov ecx, dword [esi + 0x18]
mov dword [ecx], eax
cmp dword [ecx], 0
mov eax, 0xb97dc550
mov ecx, 0x394138ca
cmove eax, ecx
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, dword [0x10067b30]
mov ecx, dword [0x10067b34]
mov edx, eax
xor edx, ecx
mov edi, eax
or edi, ecx
not edi
add edi, edx
and eax, ecx
add eax, edi
add eax, 0xa9ba3814
mov dword [ebx], eax
mov eax, dword [esi + 0x14]
mov dword [eax], 0
jmp 0x10012575
mov dword [edi], 0x2341fe2c
mov eax, dword [0x10071bc8]
mov ecx, eax
not ecx
cmp dword [0x10071bc4], 0xa
setl dl
add ecx, eax
add ecx, eax
add ecx, 0x9d0fb9d6
imul ecx, eax
test cl, 1
sete al
or al, dl
add al, 1
test al, 1
jne 0x10012729
nop dword [eax + eax]
mov edi, dword [0x10071bc0]
mov eax, dword [0x10067a90]
xor eax, dword [0x10067a94]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10071bbc], eax
setge ah
setl al
lea edx, [edi + 1]
imul edx, edi
mov ebx, dword [0x10067a9c]
mov edi, ebx
not edi
or edi, ebx
xor edi, ebx
mov ecx, dword [0x10067a98]
and edi, ecx
xor edi, ebx
or ecx, ebx
sub edi, ecx
and edx, 1
cmp edx, edi
setne cl
sete dl
mov ch, al
and ch, dl
and ah, dl
add ah, ch
or al, dl
not al
add al, ah
add al, cl
test al, 1
je 0x100126c0
jmp 0x10012750
mov eax, dword [0x10067b50]
mov ecx, dword [0x10067b54]
mov edx, eax
not edx
and edx, ecx
and eax, ecx
not ecx
add ecx, edx
add eax, ecx
add eax, 0x2341fe2d
mov dword [edi], eax
jmp 0x10012684
mov edx, dword [0x10071bb8]
cmp dword [0x10071bb4], 0xa
setl cl
lea eax, [edx + 1]
imul eax, edx
mov edx, dword [0x10067708]
mov edi, edx
not edi
mov ebx, dword [0x1006770c]
mov dword [esi], ebx
mov ebx, edi
and ebx, dword [esi]
or edx, dword [esi]
not edx
add edx, ebx
sub edx, edi
and eax, 1
cmp eax, edx
setne al
sete dl
or cl, dl
add cl, dl
add cl, al
mov eax, dword [esi + 4]
mov eax, dword [eax]
test cl, 1
jne 0x10012750
cmp eax, 0x18d6360a
jg 0x10012830
cmp eax, 0xcb34a66a
jg 0x100128c9
cmp eax, 0x94afc373
jg 0x100129e3
cmp eax, 0x80481a38
je 0x10012bd1
cmp eax, 0x84707ca3
je 0x10012c1a
cmp eax, 0x904b2d8f
jne 0x100115d0
cmp dword [0x10071bb0], 0xa
mov edx, dword [0x10071bac]
setl al
setge cl
lea ebx, [edx - 1]
imul ebx, edx
test bl, 1
sete dl
mov ah, cl
and ah, dl
mov ch, al
or ch, dl
add ch, ah
xor al, dl
not al
add al, ch
or cl, dl
add cl, al
test cl, 1
mov edi, dword [esi + 4]
jne 0x100115ff
jmp 0x10011683
cmp eax, 0x5b1c05ca
jg 0x10012936
cmp eax, 0x2341fe2b
jle 0x10012a5a
cmp eax, 0x2341fe2c
je 0x10012c63
cmp eax, 0x31cc10a4
je 0x10012cba
cmp eax, 0x5333f29d
jne 0x100115d0
mov edi, dword [0x10071ba8]
cmp dword [0x10071ba4], 0xa
setl al
setge ah
lea edx, [edi - 1]
imul edx, edi
mov edi, dword [0x10067760]
mov ebx, edi
xor ebx, edi
not ebx
mov ecx, dword [0x10067764]
and ebx, ecx
xor ebx, edi
xor edi, ecx
sub ebx, edi
and edx, 1
cmp edx, ebx
sete cl
mov dl, ah
and dl, cl
mov ch, al
xor ch, cl
add ch, dl
mov edx, eax
or dl, cl
add dl, ch
add dl, ah
and al, cl
sub dl, al
test dl, 1
mov ebx, dword [esi + 4]
je 0x10011c12
jmp 0x10011c69
cmp eax, 0xe141a044
jle 0x10012ae8
cmp eax, 0xe141a045
je 0x10012d20
cmp eax, 0xf95b5e03
je 0x10012d69
cmp eax, 0xfb38b965
jne 0x100115d0
cmp dword [0x10071ba0], 0xa
mov edx, dword [0x10071b9c]
setl al
setge cl
lea ebx, [edx + 1]
imul ebx, edx
test bl, 1
sete dl
mov ah, cl
and ah, dl
mov ch, al
or ch, dl
add ch, ah
xor al, dl
not al
add al, ch
or cl, dl
add cl, al
test cl, 1
jne 0x10011770
jmp 0x1001196d
cmp eax, 0x62f8c5b1
jle 0x10012b60
cmp eax, 0x62f8c5b2
je 0x10012d9a
cmp eax, 0x6900e6dd
je 0x10012df4
cmp eax, 0x798fd33d
jne 0x100115d0
mov edx, dword [0x10071b98]
mov eax, dword [0x10067898]
mov ecx, dword [0x1006789c]
mov edi, eax
and edi, ecx
add edi, edi
sub edi, ecx
xor ecx, eax
add ecx, edi
not eax
add eax, ecx
add eax, 0xb
cmp dword [0x10071b94], eax
setl bl
mov ecx, edx
not ecx
imul ecx, edx
mov edi, dword [0x100678a0]
mov edx, dword [0x100678a4]
mov dword [esi], edx
mov eax, edi
and eax, edx
sub eax, edi
mov edx, edi
not edx
and edx, dword [esi]
sub eax, edx
xor edi, dword [esi]
add edi, eax
and ecx, 1
cmp ecx, edi
setne al
sete cl
mov edx, ebx
and dl, cl
and al, bl
add al, dl
add al, bl
or bl, cl
add bl, al
add bl, 1
test bl, 1
mov ebx, dword [esi + 4]
je 0x100120ce
jmp 0x10012141
cmp eax, 0xa9ba3813
je 0x10012e7d
cmp eax, 0xbb04782a
jne 0x1001302f
mov eax, dword [0x10071b90]
cmp dword [0x10071b8c], 0xa
setl byte [esi + 0xc]
mov ecx, eax
not ecx
imul ecx, eax
mov edi, dword [0x100678f0]
mov ebx, dword [0x100678f4]
mov eax, edi
and eax, ebx
mov dword [esi], eax
mov edx, edi
not edx
mov eax, edx
and eax, ebx
or eax, dword [esi]
xor edi, ebx
sub edi, eax
or edx, ebx
add edx, edi
mov eax, dword [esi]
add eax, edx
add eax, 1
neg ecx
and ecx, 1
cmp ecx, eax
sete al
or al, byte [esi + 0xc]
add al, 1
test al, 1
mov ecx, dword [esi + 4]
je 0x10012240
jmp 0x100122c4
cmp eax, 0x18d6360b
je 0x10012ef0
cmp eax, 0x1e83d4d7
jne 0x100115d0
mov eax, dword [0x100677d0]
mov ecx, dword [0x100677d4]
mov edx, ecx
not edx
and edx, eax
sub edx, eax
mov edi, eax
not edi
mov ebx, edi
and ebx, ecx
sub edx, ebx
or eax, ecx
add eax, edx
mov edx, dword [0x10071b88]
or edi, ecx
add eax, edi
add eax, 0xb
cmp dword [0x10071b84], eax
setl al
mov ecx, edx
not ecx
add ecx, edx
add ecx, edx
add ecx, 2
imul ecx, edx
mov edx, dword [0x100677d8]
mov edi, dword [0x100677dc]
mov ebx, edx
and ebx, edi
not edx
add ebx, edx
or edx, edi
sub ebx, edx
and ecx, 1
cmp ecx, ebx
sete cl
or cl, al
cmp cl, 1
mov ebx, dword [esi + 4]
je 0x10011b60
jmp 0x10011bd8
cmp eax, 0xcb34a66b
je 0x10012f3a
cmp eax, 0xde092af9
jne 0x100115d0
mov edi, dword [0x10071b80]
cmp dword [0x10071b7c], 0xa
setl al
setge ah
lea edx, [edi + 1]
imul edx, edi
mov edi, dword [0x10067a10]
mov ebx, edi
xor ebx, edi
not ebx
mov ecx, dword [0x10067a14]
and ebx, ecx
xor ebx, edi
xor edi, ecx
sub ebx, edi
and edx, 1
cmp edx, ebx
sete cl
mov dl, ah
and dl, cl
mov ch, al
xor ch, cl
add ch, dl
mov edx, eax
or dl, cl
add dl, ch
add dl, ah
and al, cl
sub dl, al
test dl, 1
mov ebx, dword [esi + 4]
je 0x100116a1
jmp 0x1001172f
cmp eax, 0x5b1c05cb
je 0x10012faa
cmp eax, 0x5e9161fa
jne 0x100115d0
mov eax, dword [0x10067910]
mov ecx, dword [0x10067914]
mov edx, eax
not edx
and edx, ecx
not ecx
or ecx, eax
lea eax, [edx + ecx]
add eax, 0xb
cmp dword [0x10071b78], eax
mov edi, dword [0x10071b74]
setge cl
setl al
lea edx, [edi + 1]
imul edx, edi
test dl, 1
sete ah
and dl, al
and cl, ah
or cl, dl
mov edx, eax
xor dl, ah
add dl, cl
or al, ah
add al, dl
add al, 1
test al, 1
mov edi, dword [esi + 4]
je 0x10011ca8
jmp 0x10011cf4
mov eax, dword [str.3_tP_]
mov ecx, dword [0x100677fc]
mov edx, eax
not edx
and edx, ecx
lea edx, [eax + edx*2]
sub edx, ecx
xor eax, ecx
sub edx, eax
add edx, 0xa
cmp dword [0x10071b70], edx
mov eax, dword [0x10071b6c]
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
mov ebx, dword [esi + 4]
je 0x10011eab
jmp 0x10011f3d
mov eax, dword [0x100679b8]
mov ecx, dword [0x100679bc]
mov edx, eax
not edx
and edx, ecx
lea edx, [eax + edx*2]
sub edx, ecx
xor eax, ecx
sub edx, eax
add edx, 0xa
cmp dword [0x10071b68], edx
mov eax, dword [0x10071b64]
setl cl
lea edx, [eax - 3]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
mov ebx, dword [esi + 4]
je 0x10012575
jmp 0x10012626
mov ecx, dword [0x10071b60]
mov eax, dword [0x10067730]
mov edx, dword [0x10067734]
mov edi, edx
sub edi, eax
not edx
add edx, edi
add eax, edx
add eax, 0xb
cmp dword [0x10071b5c], eax
setl al
lea edx, [ecx - 1]
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
xor dl, cl
mov ah, al
or ah, cl
add dl, ah
not ah
add ah, dl
and al, cl
not al
add al, ah
test al, 1
mov edx, dword [esi + 4]
jne 0x10011cfc
jmp 0x10011d79
mov eax, dword [0x10071b58]
cmp dword [0x10071b54], 0xa
setge ch
setl cl
lea edx, [eax - 1]
imul edx, eax
mov dword [esi + 0xc], edx
mov edi, dword [0x10067990]
mov eax, edi
not eax
mov ebx, dword [0x10067994]
mov dword [esi], ebx
mov edx, eax
and edx, ebx
mov ebx, edi
xor ebx, dword [esi]
not ebx
add ebx, edx
sub ebx, eax
and edi, dword [esi]
sub ebx, edi
mov eax, dword [esi + 0xc]
and eax, 1
cmp eax, ebx
sete al
mov edx, ecx
and dl, al
or cl, al
add cl, dl
add cl, ch
or ch, al
add ch, cl
test ch, 1
jne 0x10012436
jmp 0x100124e0
mov eax, dword [0x100678c0]
mov edx, dword [0x100678c4]
mov ecx, eax
not ecx
mov edi, ecx
and edi, edx
or eax, edx
not eax
add eax, edi
sub eax, ecx
mov ecx, dword [0x10071b50]
add eax, 0xa
cmp dword [0x10071b4c], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
mov ebx, dword [esi + 4]
jne 0x1001215f
jmp 0x10012207
mov eax, dword [0x10071b48]
cmp dword [0x10071b44], 0xa
setge cl
setl dl
lea ebx, [eax - 1]
imul ebx, eax
test bl, 1
sete al
or al, dl
add al, dl
add al, cl
test al, 1
je 0x10011fe6
jmp 0x10012088
cmp dword [0x10071b40], 0xa
mov edx, dword [0x10071b3c]
setl byte [esi]
mov ecx, edx
not ecx
add ecx, edx
add ecx, edx
imul ecx, edx
mov edx, dword [0x10067940]
mov edi, edx
not edi
mov eax, dword [0x10067944]
and edi, eax
add edi, edi
mov ebx, eax
not ebx
or ebx, edx
and edx, eax
sub eax, edi
sub eax, ebx
not edx
add edx, eax
and ecx, 1
cmp ecx, edx
sete al
or al, byte [esi]
add al, 1
test al, 1
mov ebx, dword [esi + 4]
je 0x100122e2
jmp 0x10012347
mov ecx, dword [0x10071b38]
mov eax, dword [0x10067780]
mov edx, dword [0x10067784]
mov edi, eax
not edi
or edi, eax
and edi, edx
sub edi, edx
add edi, 0xa
cmp dword [0x10071b34], edi
setl al
mov edx, ecx
not edx
mov edi, edx
and edi, 1
add edi, edi
mov ebx, ecx
sub ebx, edi
sub ebx, ecx
add edx, ebx
add edx, 0xd90b01b6
imul edx, ecx
mov ecx, dword [0x1006778c]
mov edi, ecx
not edi
mov ebx, dword [0x10067788]
and edi, ebx
not ebx
or ebx, ecx
add ebx, ebx
lea ecx, [ebx + edi*2]
and edx, 1
xor ecx, 0xfffffffe
cmp edx, ecx
sete cl
mov edx, eax
xor dl, cl
mov ah, al
or ah, cl
add dl, ah
not ah
add ah, dl
and al, cl
sub ah, al
test ah, 1
je 0x10011d8e
jmp 0x10011df8
cmp dword [0x10071b30], 0xa
mov edx, dword [0x10071b2c]
setge byte [esi]
mov ecx, edx
and ecx, 0xfffffffe
sub ecx, edx
mov edi, edx
or edi, 1
add edi, ecx
add edi, edx
lea ecx, [edx + edi]
add ecx, 0x7d46c936
imul ecx, edx
mov eax, dword [str.Hsx:]
mov ebx, eax
not ebx
mov edi, dword [0x10067a64]
mov edx, ebx
and edx, edi
add edx, edx
not edi
or edi, eax
sub eax, edx
add edi, edi
sub eax, edi
add eax, ebx
add eax, 0xffffffff
and ecx, 1
cmp ecx, eax
setne al
sete cl
or cl, byte [esi]
add cl, al
add cl, 1
test cl, 1
mov edi, dword [esi + 4]
je 0x10012684
jmp 0x10012729
mov eax, dword [0x10071b28]
cmp dword [0x10071b24], 0xa
setge ch
setl cl
mov edi, eax
xor edi, 0xfffffffe
lea edi, [edi + eax*2]
mov edx, eax
not edx
lea ebx, [edi + edx*2]
add edx, edx
or edx, 2
sub ebx, edx
add ebx, 3
imul ebx, eax
test bl, 1
sete al
and al, cl
add al, bl
add al, ch
test al, 1
mov ebx, dword [esi + 4]
jne 0x10011f5b
jmp 0x10011fab
mov edx, dword [0x10071b20]
cmp dword [0x10071b1c], 0xa
setge byte [esi]
mov ecx, edx
and ecx, 0xfffffffe
sub ecx, edx
mov edi, edx
or edi, 1
add edi, ecx
add edi, edx
lea ecx, [edx + edi]
add ecx, 0xc5fd151e
imul ecx, edx
mov eax, dword [0x100677b0]
mov ebx, eax
not ebx
mov edi, dword [0x100677b4]
mov edx, ebx
and edx, edi
add edx, edx
not edi
or edi, eax
sub eax, edx
add edi, edi
sub eax, edi
add eax, ebx
add eax, 0xffffffff
and ecx, 1
cmp ecx, eax
setne al
sete cl
or cl, byte [esi]
add cl, al
test cl, 1
mov edi, dword [esi + 4]
jne 0x10011e3c
jmp 0x10011e90
mov eax, dword [0x10067960]
mov ecx, dword [0x10067964]
mov edx, eax
or edx, ecx
mov edi, ecx
sub edi, edx
mov edx, eax
xor edx, ecx
add edx, edi
not ecx
or ecx, eax
lea eax, [ecx + edx]
add eax, 0xb
cmp dword [0x10071b18], eax
mov edi, dword [0x10071b14]
setge byte [esi]
setl byte [esi + 0xc]
lea edx, [edi - 1]
imul edx, edi
mov edi, dword [0x1006796c]
mov eax, edi
not eax
mov ebx, dword [0x10067968]
and eax, ebx
sub eax, ebx
sub eax, ebx
mov ecx, ebx
or ecx, edi
add ecx, eax
xor edi, ebx
not edi
add edi, ecx
lea eax, [ebx + edi]
add eax, 1
and edx, 1
cmp edx, eax
sete al
mov cl, byte [esi + 0xc]
or al, cl
add al, cl
add al, byte [esi]
test al, 1
mov edx, dword [esi + 4]
je 0x1001234f
jmp 0x100123f4
cmp eax, 0x94afc374
jne 0x100115d0
mov ebx, dword [esi + 0x1c]
nop dword [eax]
mov ecx, dword [0x10071b10]
cmp dword [0x10071b0c], 0xa
setl dl
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete cl
or al, dl
xor dl, cl
not dl
add dl, cl
add al, dl
mov edi, dword [ebx]
test al, 1
je 0x10013040
mov ecx, dword [esi + 0x40]
xor ecx, ebp
call fcn.10052450
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret