Function at 0x10011b50
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, 0x50
mov esi, esp
mov eax, dword [0x1006d9c0]
xor eax, ebp
mov dword [esi + 0x48], eax
mov eax, dword [0x10066698]
mov ecx, dword [0x1006669c]
mov edx, eax
xor edx, ecx
lea edx, [eax + edx*2]
mov edi, eax
or edi, ecx
add edi, edi
sub edx, edi
mov ebx, eax
not ebx
or ebx, ecx
add ebx, edx
mov edi, dword [0x10070c78]
and eax, ecx
add eax, ebx
add eax, 0xb
cmp dword [0x10070c74], eax
setge ah
setl al
mov ecx, edi
not ecx
and ecx, 1
add ecx, ecx
mov edx, edi
sub edx, ecx
sub edx, edi
sub edx, edi
add edx, 1
imul edx, edi
mov edi, dword [0x100666a0]
mov dword [esi + 4], edi
not edi
mov ebx, dword [0x100666a4]
mov ecx, edi
and ecx, ebx
mov dword [esi + 8], ecx
mov ecx, dword [esi + 4]
or ecx, ebx
not ecx
add ecx, dword [esi + 8]
or edi, ebx
not ebx
sub ecx, ebx
or ebx, dword [esi + 4]
add ebx, ecx
sub ebx, edi
and edx, 1
cmp edx, ebx
sete cl
or al, cl
or ah, cl
add cl, al
not al
add al, cl
add al, ah
add al, 1
test al, 1
jne 0x10011d17
push eax
mov dword [esi + 0xc], esp
push eax
mov dword [esi + 0x30], esp
push eax
mov dword [esi + 0x2c], esp
push eax
mov dword [esi + 0x28], esp
push eax
mov edi, esp
push eax
mov ebx, esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x24], eax
mov esp, eax
push eax
mov dword [esi + 0x40], esp
push str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d2dc
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 0x1c
movaps xmm0, xmmword [0x1005e1b0]
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 + 0x1c], ebx
mov eax, dword [ebx]
cmp eax, 0xffffffff
mov dword [esi + 0x44], edi
sete byte [edi]
push eax
mov eax, esp
mov dword [esi + 0x14], eax
mov dword [eax], 0xa28d827d
push eax
mov dword [esi + 0x18], esp
push eax
mov dword [esi + 0x20], esp
push eax
mov dword [esi + 8], esp
mov edx, dword [0x100666b0]
mov eax, dword [0x100666b4]
mov edi, edx
and edi, eax
mov dword [esi + 4], edi
sub edi, edx
xor edx, eax
add edx, edi
not eax
add eax, edx
mov edx, dword [0x10070c70]
cmp dword [0x10070c6c], 0xa
mov edi, edx
not edi
setl byte [esi + 0x10]
imul edi, edx
mov edx, dword [0x100666c0]
mov ecx, dword [0x100666c4]
mov ebx, edx
or ebx, ecx
not ebx
add ebx, ecx
not edx
or edx, ecx
sub ebx, edx
neg edi
and edi, 1
cmp edi, ebx
mov ecx, dword [esi + 8]
mov edx, dword [esi + 4]
lea eax, [edx + eax - 0x61fd2b14]
mov dword [ecx], eax
setne al
sete cl
mov dl, byte [esi + 0x10]
or cl, dl
or al, dl
add dl, cl
not cl
add cl, dl
add al, cl
add al, 1
test al, 1
je 0x100132a0
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 str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d2dc
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 0x1c
movaps xmm0, xmmword [0x1005e1b0]
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 eax, esp
mov dword [eax], 0xa28d827d
push eax
push eax
push eax
mov eax, esp
mov edx, dword [0x10066a78]
mov edi, dword [0x10066a7c]
mov ecx, edx
or ecx, edi
not ecx
add ecx, edi
not edx
or edx, edi
sub ecx, edx
add ecx, 0x9e02d4eb
mov dword [eax], ecx
jmp 0x10011c07
mov eax, dword [0x100666f8]
mov ecx, dword [0x100666fc]
mov edx, eax
xor edx, eax
not edx
and edx, ecx
xor edx, eax
mov edi, eax
or edi, ecx
not edi
add edi, edx
mov edx, dword [0x10070c68]
and eax, ecx
add eax, edi
add eax, 0xb
cmp dword [0x10070c64], eax
setge byte [esi + 4]
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x10066704]
mov edi, edx
not edi
mov ebx, dword [0x10066700]
lea eax, [edx + edi*2]
or edi, ebx
sub eax, edi
and ebx, edx
add eax, ebx
add eax, 1
and ecx, 1
cmp ecx, eax
setne al
sete cl
or cl, byte [esi + 4]
add cl, al
test cl, 1
je 0x10011db0
jmp 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov dword [esi + 4], eax
mov ecx, dword [0x10066740]
mov edi, dword [0x10066744]
mov edx, ecx
and edx, edi
mov eax, ecx
xor eax, edi
sub eax, edx
mov ebx, edi
not ebx
or ebx, ecx
add ebx, eax
not ecx
or ecx, edi
add ecx, ebx
lea eax, [edx + ecx]
add eax, 0xd34f269b
cmp dword [esi + 4], eax
mov ecx, 0x8b4910d2
mov eax, 0x430d615a
cmovl ecx, eax
mov dword [esi + 0x10], ecx
mov eax, dword [0x10066748]
mov ecx, dword [0x1006674c]
mov edx, eax
not edx
or edx, eax
and edx, ecx
sub edx, ecx
add edx, 0xa
cmp dword [0x10070c60], edx
mov eax, dword [0x10070c5c]
setl cl
lea ebx, [eax - 1]
imul ebx, eax
mov edx, dword [0x10066750]
mov eax, dword [str.iR_y]
mov dword [esi + 4], eax
mov edi, edx
or edi, eax
mov eax, edi
not eax
add eax, edi
mov edi, dword [esi + 4]
not edi
add eax, edi
or edi, edx
sub eax, edi
and edx, dword [esi + 4]
add eax, edx
add eax, 1
and ebx, 1
cmp ebx, eax
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x10]
mov dword [eax], edx
sete al
mov edx, ecx
and dl, al
mov ah, cl
or ah, al
add dl, ah
not ah
add ah, dl
xor cl, al
not cl
add cl, ah
test cl, 1
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov edx, dword [0x10066a88]
mov ecx, dword [0x10066a8c]
mov edi, edx
and edi, ecx
lea ebx, [edx + edx]
sub ebx, edi
mov edi, edx
or edi, ecx
not edi
lea edi, [ebx + edi*2]
not ecx
sub edi, ecx
or ecx, edx
sub edi, ecx
add edi, 0xd34f2699
cmp eax, edi
mov eax, 0x8b4910d2
mov ecx, 0x430d615a
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x10011e22
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0x8b7faf98
mov ecx, 0x35b69a67
mov eax, 0xf253a629
cmove ecx, eax
mov edi, dword [0x10070c58]
cmp dword [0x10070c54], 0xa
setl al
mov edx, edi
and edx, 0xfffffffe
add edx, edi
mov ebx, edi
not ebx
add ebx, edx
lea edx, [edi + ebx]
add edx, 0xc8795d9a
imul edx, edi
mov edi, dword [0x100668bc]
mov ebx, edi
not ebx
or ebx, edi
mov edi, dword [0x100668b8]
and ebx, edi
sub ebx, edi
and edx, 1
cmp edx, ebx
mov edx, dword [esi + 8]
mov dword [edx], ecx
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
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0x8b7faf98
mov eax, 0x35b69a67
mov ecx, 0xf253a629
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x10011f37
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0x21e7a174
mov eax, 0x4d753a6d
mov ecx, 0x7480adba
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov edx, dword [0x10066798]
mov eax, dword [0x1006679c]
mov ecx, edx
not ecx
mov edi, ecx
and edi, eax
sub edi, edx
not eax
or eax, edx
add eax, edi
sub eax, ecx
mov ecx, dword [0x10070c50]
add eax, 0xa
cmp dword [0x10070c4c], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0x21e7a174
mov eax, 0x4d753a6d
mov ecx, 0x7480adba
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x10011fd6
mov eax, dword [esi + 0x44]
cmp byte [eax], 0
mov eax, 0xd34f2699
mov ecx, 0x21e7a174
cmovne eax, ecx
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [0x10066948]
mov ecx, dword [0x1006694c]
mov edx, eax
and edx, ecx
add edx, edx
mov edi, eax
or edi, ecx
sub edi, edx
mov edx, eax
xor edx, ecx
not edx
add edx, edi
not ecx
sub edx, ecx
or ecx, eax
lea eax, [edx + ecx]
add eax, 0xdb3bcd56
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov eax, dword [0x10070c48]
cmp dword [0x10070c44], 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
mov ecx, dword [esi + 0x20]
mov dword [ecx], 0
add al, 1
test al, 1
jne 0x10013220
mov eax, dword [esi + 0x44]
cmp byte [eax], 0
mov eax, 0xd34f2699
mov ecx, 0x21e7a174
cmovne eax, ecx
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [0x10066af4]
mov ecx, eax
not ecx
or ecx, eax
mov eax, dword [0x10066af0]
and ecx, eax
sub ecx, eax
add ecx, 0xdb3bcd55
mov eax, dword [esi + 8]
mov dword [eax], ecx
mov eax, dword [esi + 0x20]
mov dword [eax], 0
jmp 0x10012053
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov ecx, dword [0x10066830]
and ecx, dword [0x10066834]
mov edx, ecx
not edx
add ecx, edx
add ecx, 0x8b7faf99
cmp eax, ecx
mov eax, 0x6637b2b9
mov ecx, 0x22f7f143
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov edx, dword [0x10070c40]
cmp dword [0x10070c3c], 0xa
setl al
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dl
mov ah, al
or ah, dl
add ah, cl
mov dh, al
or dh, cl
add dh, ah
and al, dl
sub dh, al
test dh, 1
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov ecx, dword [0x10066ab8]
mov edx, ecx
not edx
add ecx, edx
add ecx, 0x8b7faf99
cmp eax, ecx
mov eax, 0x6637b2b9
mov ecx, 0x22f7f143
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x10012119
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov dword [esi + 4], eax
mov edi, dword [0x10066858]
mov ecx, dword [0x1006685c]
mov edx, edi
not edx
mov eax, edx
and eax, ecx
mov ebx, edi
or ebx, ecx
not ebx
add ebx, eax
or edx, ecx
not ecx
sub ebx, ecx
or ecx, edi
add ecx, ebx
sub ecx, edx
add ecx, 0xa28d827d
cmp dword [esi + 4], ecx
mov ecx, 0x750b85f5
mov eax, 0xd821fdc0
cmovl ecx, eax
mov dword [esi + 4], ecx
mov edx, dword [0x10066860]
mov edi, dword [0x10066864]
mov ecx, edx
or ecx, edi
not ecx
add ecx, edi
not edx
or edx, edi
mov edi, dword [0x10070c38]
sub ecx, edx
add ecx, 0xa
cmp dword [0x10070c34], ecx
setl byte [esi + 0x10]
lea edx, [edi + 1]
imul edx, edi
mov edi, dword [0x10066868]
mov ebx, dword [0x1006686c]
mov ecx, edi
and ecx, ebx
mov eax, ecx
sub eax, edi
xor edi, ebx
add edi, eax
not ebx
add ebx, edi
lea eax, [ecx + ebx]
add eax, 1
and edx, 1
cmp edx, eax
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
mov dword [eax], ecx
sete al
or al, byte [esi + 0x10]
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0xa28d827d
mov eax, 0x750b85f5
mov ecx, 0xd821fdc0
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x100121af
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov ecx, dword [esi + 0xc]
mov dword [ecx], eax
cmp dword [0x10070c30], 0xa
mov eax, dword [0x10070c2c]
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
mov eax, dword [esi + 8]
mov dword [eax], 0x8bf668f2
jne 0x10013220
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov ecx, dword [esi + 0xc]
mov dword [ecx], eax
mov edx, dword [0x10066a80]
mov ecx, dword [0x10066a84]
mov eax, edx
or eax, ecx
not eax
add eax, edx
not ecx
or ecx, edx
sub eax, ecx
add eax, 0x8bf668f2
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x10012287
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0xe217a273
mov eax, 0xdafc508c
mov ecx, 0x69c45403
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov ecx, dword [0x10066770]
mov eax, dword [0x10066774]
mov edx, eax
not edx
mov edi, ecx
and edi, edx
lea edi, [eax + edi*2]
mov ebx, ecx
xor ebx, eax
sub edi, ebx
or eax, ecx
not eax
add eax, edi
or edx, ecx
sub eax, edx
add eax, 0xa
cmp dword [0x10070c28], eax
mov edx, dword [0x10070c24]
setl byte [esi + 4]
lea ecx, [edx + edx]
mov edi, edx
not edi
add ecx, edi
add ecx, 2
imul ecx, edx
mov ebx, dword [0x10066778]
mov edi, dword [0x1006677c]
mov eax, ebx
and eax, edi
mov edx, ebx
xor edx, edi
lea eax, [edx + eax*2]
not edi
add edi, eax
not ebx
lea eax, [ebx + edi]
add eax, 2
and ecx, 1
cmp ecx, eax
sete cl
setne al
mov ch, byte [esi + 4]
mov dl, ch
and dl, al
mov ah, ch
or ah, cl
add ah, dl
xor cl, ch
not cl
add cl, ah
or ch, al
add ch, cl
test ch, 1
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0xe217a273
mov eax, 0xdafc508c
mov ecx, 0x69c45403
cmovl eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x100122ed
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0x21e7a174
mov eax, 0x35b69a67
mov ecx, 0xc1ffd5e
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov eax, dword [0x10070c20]
cmp dword [0x10070c1c], 0xa
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0x21e7a174
mov eax, 0x35b69a67
mov ecx, 0xc1ffd5e
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x100123c0
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0xe217a273
mov ecx, 0x35b69a67
mov eax, 0xdce4c283
cmove ecx, eax
mov dword [esi + 4], ecx
mov ecx, dword [0x100667e8]
mov edi, dword [0x100667ec]
mov edx, ecx
and edx, edi
mov ebx, ecx
or ebx, edi
lea eax, [edx + ebx]
not ebx
lea ebx, [ebx + ebx*2]
add ebx, eax
xor ecx, edi
not ecx
add ecx, ecx
sub ecx, ebx
mov eax, dword [0x10070c18]
not edx
add ecx, edx
add ecx, 0xa
cmp dword [0x10070c14], ecx
setl byte [esi + 0x10]
lea edx, [eax - 1]
imul edx, eax
mov edi, dword [0x100667f0]
mov eax, edi
not eax
mov ebx, dword [0x100667f4]
lea ecx, [edi + eax*2]
or eax, ebx
sub ecx, eax
and edi, ebx
lea eax, [ecx + edi]
add eax, 1
and edx, 1
cmp edx, eax
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
mov dword [eax], ecx
sete al
or al, byte [esi + 0x10]
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0xe217a273
mov eax, 0x35b69a67
mov ecx, 0xdce4c283
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x1001241d
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov ecx, dword [0x10066808]
mov edx, dword [0x1006680c]
mov edi, ecx
not edi
and edi, edx
not edx
or edx, ecx
lea ecx, [edi + edx]
add ecx, 0xd34f269a
cmp eax, ecx
mov eax, 0x35b69a67
mov ecx, 0xd9c3334e
cmove eax, ecx
mov ecx, dword [0x10066810]
mov edx, dword [0x10066814]
mov edi, ecx
and edi, edx
mov ebx, ecx
xor ebx, edx
add ebx, edi
or ecx, edx
sub ebx, ecx
add ebx, 0xa
cmp dword [0x10070c10], ebx
mov edi, dword [0x10070c0c]
setl byte [esi + 4]
lea edx, [edi + 1]
imul edx, edi
mov edi, dword [0x10066818]
mov ebx, edi
xor ebx, edi
not ebx
mov ecx, dword [0x1006681c]
and ebx, ecx
xor ebx, edi
xor edi, ecx
sub ebx, edi
and edx, 1
cmp edx, ebx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
sete al
mov dl, byte [esi + 4]
mov ecx, edx
and cl, al
add cl, dl
add cl, al
test cl, 1
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0xd34f2699
mov eax, 0x35b69a67
mov ecx, 0xd9c3334e
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x100124d2
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0xa28d827d
mov eax, 0x35b69a67
mov ecx, 0xf23c1a35
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov eax, dword [0x10070c08]
cmp dword [0x10070c04], 0xa
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov ecx, dword [0x10066ac8]
mov edx, dword [0x10066acc]
mov edi, ecx
or edi, edx
mov ebx, edi
not ebx
lea edi, [edi + ebx*2]
mov ebx, ecx
xor ebx, edx
not ebx
sub ebx, edi
and ecx, edx
not ecx
add ecx, ebx
add ecx, 0xa28d827d
cmp eax, ecx
mov eax, 0x35b69a67
mov ecx, 0xf23c1a35
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x10012594
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov ecx, dword [0x100668d0]
mov edx, dword [0x100668d4]
mov edi, edx
not edi
and edi, ecx
mov ebx, ecx
or ebx, edx
add ebx, edi
xor edx, ecx
not edx
add edx, ebx
not ecx
add ecx, edx
add ecx, 0x83d4b1e1
cmp eax, ecx
mov ecx, 0x35b69a67
mov eax, 0xf3464d74
cmove ecx, eax
mov dword [esi + 4], ecx
cmp dword [0x10070c00], 0xa
mov edi, dword [0x10070bfc]
setl byte [esi + 0x10]
lea edx, [edi + 1]
imul edx, edi
mov ecx, dword [0x100668e4]
mov ebx, ecx
not ebx
mov eax, dword [0x100668e0]
and ebx, eax
mov edi, eax
not edi
add edi, edi
lea edi, [edi + ebx*2]
and eax, ecx
not eax
add eax, eax
sub eax, edi
and edx, 1
cmp edx, eax
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
mov dword [eax], ecx
sete al
or al, byte [esi + 0x10]
jne 0x10013220
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
cmp eax, 0x83d4b1df
mov eax, 0x35b69a67
mov ecx, 0xf3464d74
cmove eax, ecx
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x1001261c
mov eax, dword [0x10066900]
mov edx, dword [0x10066904]
mov ecx, eax
and ecx, edx
mov ebx, eax
xor ebx, edx
sub ebx, ecx
mov edi, edx
not edi
or edi, eax
add edi, ebx
not eax
or eax, edx
add eax, edi
add eax, ecx
add eax, 0xc
cmp dword [0x10070bf8], eax
mov edx, dword [0x10070bf4]
setl al
lea ecx, [edx + edx]
mov edi, edx
not edi
add ecx, edi
add ecx, 0x8d610ce0
imul ecx, edx
mov edx, dword [0x10066908]
mov edi, dword [0x1006690c]
mov ebx, edx
or edx, edi
not edi
and ebx, edi
not edx
add edx, ebx
sub edx, edi
and ecx, 1
cmp ecx, edx
setne cl
sete dl
mov ah, al
or ah, dl
not ah
add ah, cl
or cl, al
add cl, ah
and al, dl
not al
add al, cl
mov ecx, dword [esi + 8]
mov dword [ecx], 0xaf8d6209
test al, 1
jne 0x10013220
mov eax, dword [esi + 8]
mov dword [eax], 0xaf8d6209
jmp 0x100126ce
mov eax, dword [0x10066920]
mov ecx, dword [0x10066924]
mov edx, eax
or edx, ecx
not edx
add edx, eax
not ecx
or ecx, eax
sub edx, ecx
add edx, 0xdb3bcd55
mov eax, dword [0x10070bf0]
cmp dword [0x10070bec], 0xa
setge ch
setl cl
lea edi, [eax - 1]
imul edi, eax
mov dword [esi + 0x10], edi
mov ebx, dword [0x10066930]
mov edi, dword [0x10066934]
mov dword [esi + 4], edi
mov eax, ebx
and eax, edi
mov edi, dword [esi + 4]
add edi, edi
sub eax, edi
mov edi, ebx
xor edi, dword [esi + 4]
add edi, eax
mov eax, dword [esi + 4]
add edi, eax
not ebx
or ebx, eax
lea eax, [ebx + edi]
add eax, 1
mov edi, dword [esi + 0x10]
and edi, 1
cmp edi, eax
mov eax, dword [esi + 8]
mov dword [eax], edx
setne al
sete dl
mov ah, cl
or ah, dl
xor cl, dl
not cl
add cl, ah
add cl, al
add cl, ch
add cl, 1
test cl, 1
jne 0x10013220
mov eax, dword [0x10066ae8]
mov ecx, dword [0x10066aec]
mov edx, eax
xor edx, eax
not edx
and edx, ecx
xor edx, eax
mov edi, eax
or edi, ecx
not edi
add edi, edx
and eax, ecx
add eax, edi
add eax, 0xdb3bcd56
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x1001276d
mov eax, dword [esi + 0x28]
mov edi, dword [esi + 0x24]
mov dword [eax], edi
mov eax, dword [eax]
push str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d2f5
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push edi
mov ecx, dword [esi + 0x1c]
push dword [ecx]
call eax
mov dword [esi + 0x3c], eax
mov ecx, dword [0x10066684]
mov edi, ecx
not edi
lea eax, [edi - 0x3746fe1a]
mov dword [esi + 4], eax
mov edx, eax
and edx, 0xc8b901e5
xor eax, 0x3746fe1a
sub edx, eax
mov dword [esi + 0x10], edx
mov eax, edi
and eax, 0x5db2cb6f
add eax, edi
and ecx, 0xa24d3490
add eax, ecx
lea edx, [edi + edi]
sub edx, edi
or edi, 0xa24d3490
sub eax, edi
mov edi, eax
and edi, ecx
mov ebx, eax
or ebx, ecx
xor eax, ecx
not ebx
lea ecx, [ebx + ebx*2]
add ecx, edi
not eax
add eax, eax
sub eax, ecx
not edi
add edi, eax
mov eax, edi
not eax
or eax, edi
and eax, 0xa24d3490
xor edi, 0xa24d3490
sub edi, eax
mov ebx, dword [0x10066680]
mov eax, ebx
xor eax, edx
add eax, ebx
mov ecx, ebx
or ecx, edx
not ecx
add ecx, eax
not edx
or edx, ebx
sub ecx, edx
mov eax, ecx
and eax, ebx
add eax, ecx
mov edx, ecx
not edx
and edx, ebx
lea eax, [eax + edx*2]
add edi, 0xa24d3490
sub eax, ebx
xor ecx, ebx
not ebx
not edi
and edi, ebx
mov ebx, dword [esi + 4]
or ebx, 0x3746fe1a
mov dword [esi + 4], ebx
mov edx, dword [esi + 0x10]
add edx, ebx
mov ebx, 0xc8b901e6
sub ebx, edx
mov dword [esi + 0x38], ebx
and ebx, edi
sub ebx, edx
mov dword [esi + 0x34], ebx
mov edx, dword [esi + 0x10]
mov ebx, dword [esi + 4]
add edx, ebx
add edx, 0x3746fe19
not edi
and edx, edi
add edx, dword [esi + 0x34]
add edx, edi
xor edi, dword [esi + 0x38]
sub edx, edi
sub eax, ecx
mov ecx, 0x3746fe1a
sub ecx, edx
not eax
lea edi, [ecx + ecx]
sub edi, eax
mov ebx, ecx
xor ebx, eax
lea edi, [edi + ebx*2]
mov ebx, ecx
or ebx, eax
add ebx, ebx
sub edi, ebx
add edx, 0xc8b901e5
or edx, eax
add edx, edi
and eax, ecx
lea edi, [edx + eax]
add eax, edx
add eax, 1
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x16679104
add edx, edi
add edx, 1
mov edi, ecx
and edi, 0xe9986efb
add edi, edx
or eax, 0xe9986efb
add eax, edi
or ecx, 0x16679104
sub eax, ecx
imul ecx, eax, 0x6e1cbc8b
add ecx, 0xd375e80b
not ecx
lea edx, [ecx - 0x1e05ab4c]
mov eax, edx
and eax, 0xf9b4c520
sub eax, ecx
or edx, 0x64b3adf
sub eax, edx
add eax, 0x1e05ab4b
imul ecx, eax, 0xbbb0cb23
mov edx, ecx
and edx, 0x18bf3090
imul eax, eax, 0x33126169
sub eax, edx
mov edx, ecx
not edx
and edx, 0x6740cf6f
lea eax, [eax + edx*2]
or ecx, 0xe740cf6f
sub eax, ecx
add eax, 0x36e3812d
cmp dword [esi + 0x3c], eax
mov eax, 0xe217a273
mov ecx, 0x83d4b1df
cmove eax, ecx
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov ecx, dword [0x10070be8]
cmp dword [0x10070be4], 0xa
setl al
mov edx, ecx
not edx
add edx, 0xf84a8524
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
xor dl, cl
and al, cl
not dl
not al
add al, dl
mov ecx, dword [esi + 0x18]
mov dword [ecx], 0
mov ecx, dword [esi + 8]
mov dword [ecx], 0xdb3bcd55
test al, 1
jne 0x10013220
mov eax, dword [esi + 0x28]
mov edi, dword [esi + 0x24]
mov dword [eax], edi
mov eax, dword [eax]
push str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d2f5
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push edi
mov ecx, dword [esi + 0x1c]
push dword [ecx]
call eax
mov dword [esi + 4], eax
mov edx, dword [0x10066684]
mov eax, edx
not eax
mov ecx, eax
sub ecx, edx
sub ecx, eax
mov edi, ecx
neg edi
and edi, 0xc8b901e6
add edi, ecx
add edi, 0xffffffff
lea ebx, [ecx - 1]
mov ecx, ebx
or ecx, 0xc8b901e6
add ecx, edi
mov dword [esi + 0x10], ecx
xor ebx, 0x3746fe19
mov dword [esi + 0x3c], ebx
add ecx, ebx
mov edi, 0xc8b901e5
sub edi, ecx
mov dword [esi + 0x38], edi
mov ecx, eax
and ecx, 0x5db2cb6f
lea edi, [ecx + ecx]
sub edi, ecx
and edx, 0xa24d3490
add edi, edx
mov dword [esi + 0x34], edi
mov edx, dword [0x10066680]
mov ecx, edx
and ecx, eax
sub ecx, eax
sub ecx, eax
mov ebx, edx
xor ebx, eax
lea ebx, [ecx + ebx*2]
mov ecx, edx
not ecx
add ebx, eax
or eax, ecx
lea edi, [eax + ebx]
add edi, 1
mov ebx, edi
and ebx, edx
lea eax, [ebx + ebx*2]
mov ebx, edx
xor edx, edi
add edx, eax
mov eax, dword [esi + 0x34]
xor eax, 0x5db2cb6f
add edx, ecx
and ecx, eax
and ebx, eax
lea ebx, [ebx + ecx*2]
sub ebx, eax
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x3c]
add ecx, eax
add ecx, 0x3746fe1a
mov eax, ebx
not eax
and ecx, eax
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x38]
or ebx, ecx
sub ecx, dword [esi + 0x10]
add ecx, eax
sub ecx, ebx
not edi
lea eax, [edx + edi]
add edx, edi
add edx, 2
not edx
lea edx, [eax + edx*2]
add edx, 3
lea eax, [edx + edx]
not edx
add edx, eax
mov eax, 0x16679104
sub eax, ecx
sub eax, edx
add ecx, edx
add ecx, 0xffffffff
add ecx, ecx
not eax
sub eax, ecx
lea ecx, [eax + 0x2ccf2206]
mov edx, ecx
not edx
mov edi, edx
and edi, 0x16679104
add eax, edi
add eax, 0x2ccf2206
xor ecx, 0xe9986efb
add ecx, eax
or edx, 0x16679104
sub ecx, edx
imul ecx, ecx, 0x6e1cbc8b
lea eax, [ecx + 0x32d552d4]
mov edx, eax
and edx, 0xf9b4c520
add ecx, edx
add ecx, 0x32d552d4
mov edx, eax
not edx
and edx, 0x64b3adf
add edx, ecx
xor eax, 0x64b3adf
sub edx, eax
imul eax, edx, 0xbbb0cb23
add eax, 0x18bf3090
mov ecx, eax
and ecx, 0xe740cf6f
mov edx, eax
xor edx, 0x18bf3090
sub ecx, edx
or eax, 0x18bf3090
add eax, ecx
add eax, 0xe740cf70
cmp dword [esi + 4], eax
mov eax, 0xe217a273
mov ecx, 0x83d4b1df
cmove eax, ecx
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [0x10066af8]
mov ecx, dword [0x10066afc]
mov edx, eax
not edx
mov edi, edx
and edi, ecx
or eax, ecx
sub edi, eax
sub edi, edx
add edi, 0xdb3bcd54
mov eax, dword [esi + 8]
mov dword [eax], edi
mov eax, dword [esi + 0x18]
mov dword [eax], 0
jmp 0x10012834
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x24]
mov dword [eax], ecx
mov eax, dword [eax]
push dword [eax]
call fcn.10054f80
add esp, 4
mov ecx, dword [esi + 0x30]
mov dword [ecx], eax
cmp dword [ecx], 0
mov eax, 0x8b7faf98
mov ecx, 0x83d4b1df
cmove eax, ecx
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [0x10066998]
mov ecx, dword [0x1006699c]
mov edx, ecx
not edx
or edx, ecx
and edx, eax
sub edx, eax
add edx, 0xdb3bcd55
mov eax, dword [esi + 8]
mov dword [eax], edx
mov eax, dword [0x100669a0]
mov ecx, dword [0x100669a4]
mov edx, ecx
not edx
lea edi, [ecx + edx*2]
or edx, eax
sub edi, edx
and eax, ecx
add eax, edi
add eax, 0xb
cmp dword [0x10070be0], eax
mov ecx, dword [0x10070bdc]
setl al
lea edx, [ecx - 1]
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
and dl, cl
mov ah, al
or ah, cl
add dl, ah
not ah
add ah, dl
xor al, cl
not al
add al, ah
mov ecx, dword [esi + 0x18]
mov dword [ecx], 0
test al, 1
jne 0x10013220
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x24]
mov dword [eax], ecx
mov eax, dword [eax]
push dword [eax]
call fcn.10054f80
add esp, 4
mov ecx, dword [esi + 0x30]
mov dword [ecx], eax
cmp dword [ecx], 0
mov eax, 0x8b7faf98
mov ecx, 0x83d4b1df
cmove eax, ecx
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov edx, dword [0x10066b00]
mov ecx, dword [0x10066b04]
mov eax, edx
or eax, ecx
not eax
add eax, edx
not ecx
or ecx, edx
sub eax, ecx
add eax, 0xdb3bcd55
mov ecx, dword [esi + 8]
mov dword [ecx], eax
mov eax, dword [esi + 0x18]
mov dword [eax], 0
jmp 0x10012c40
push str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d303
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, dword [esi + 0x2c]
mov ecx, dword [edi]
push 0
push dword [esi + 0x40]
push dword [ecx]
mov ebx, dword [esi + 0x30]
push dword [ebx]
mov ecx, dword [esi + 0x1c]
push dword [ecx]
call eax
mov eax, dword [edi]
mov eax, dword [eax]
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov eax, dword [0x100669c0]
mov ecx, dword [0x100669c4]
mov edx, ecx
not edx
and edx, eax
mov edi, eax
not edi
add edi, edi
lea edx, [edi + edx*2]
and eax, ecx
not eax
add eax, eax
sub eax, edx
add eax, 0x83d4b1df
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [ebx]
mov ecx, dword [esi + 0x18]
mov dword [ecx], eax
mov edx, dword [0x10070bd8]
mov ecx, edx
not ecx
cmp dword [0x10070bd4], 0xa
setl al
mov edi, edx
and edi, 0x7ffffffe
and ecx, 0xfffffffe
lea ecx, [ecx + edi*2]
mov edi, edx
and edi, 1
add ecx, edi
add ecx, 3
imul ecx, edx
test cl, 1
sete dl
or dl, al
or cl, al
add al, dl
not dl
add dl, al
add cl, dl
mov eax, dword [esi + 8]
mov dword [eax], 0xdb3bcd55
test cl, 1
jne 0x10013220
push str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d303
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, dword [esi + 0x2c]
mov ecx, dword [ebx]
push 0
push dword [esi + 0x40]
push dword [ecx]
mov edi, dword [esi + 0x30]
push dword [edi]
mov ecx, dword [esi + 0x1c]
push dword [ecx]
call eax
mov eax, dword [ebx]
mov eax, dword [eax]
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov eax, dword [esi + 0x14]
mov dword [eax], 0x83d4b1df
mov eax, dword [edi]
mov ecx, dword [esi + 0x18]
mov dword [ecx], eax
mov eax, dword [0x10066b10]
mov edx, dword [0x10066b14]
mov ecx, eax
and ecx, edx
mov edi, eax
or edi, edx
lea ebx, [ecx + edi]
not edi
lea edi, [edi + edi*2]
add edi, ebx
xor eax, edx
not eax
add eax, eax
sub eax, edi
not ecx
add eax, ecx
add eax, 0xdb3bcd55
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x10012d4b
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov dword [esi + 4], eax
push str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d30c
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esi + 0x1c]
push dword [ecx]
call eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov ebx, dword [0x10066690]
mov ecx, dword [0x10066694]
mov edi, ecx
neg edi
lea edx, [ebx + ebx]
sub edx, ecx
or edi, ebx
not edi
add edi, edx
lea eax, [ecx - 1]
or eax, ebx
sub eax, edi
mov dword [esi + 0x10], eax
mov edx, ecx
not edx
lea eax, [ecx + edx*2]
add eax, 1
mov edi, eax
and edi, 0x2f22551b
lea edi, [edi + edi*2]
xor eax, 0x2f22551b
add eax, edi
lea edx, [ecx + edx*2]
sub eax, edx
mov edx, ecx
and edx, 0xd0ddaae4
mov edi, ecx
and edi, 0x2f22551b
sub edx, edi
mov edi, ecx
xor edi, 0xd0ddaae4
add edi, edx
or ecx, 0x2f22551b
add ecx, edi
add ecx, 1
add eax, 0xd0ddaae4
or ecx, eax
xor ecx, 0xd0ddaae4
add ecx, dword [esi + 0x10]
mov edi, ecx
and edi, ebx
not ebx
add edi, ecx
mov edx, ecx
not edx
and edx, ebx
add edx, edi
sub edx, ebx
xor ebx, ecx
sub edx, ebx
imul eax, edx, 0x9492759f
add eax, 0xc0492a8
mov ecx, eax
and ecx, 0x9608a664
mov edx, eax
xor edx, 0x69f7599b
sub ecx, edx
or eax, 0x69f7599b
add eax, ecx
imul eax, eax, 0x9e97665f
lea ecx, [eax + 0x64eb0285]
mov edx, ecx
not edx
mov edi, edx
and edi, 0x78b5ba85
add eax, edi
add eax, 0x64eb0285
or ecx, 0x78b5ba85
sub eax, ecx
sub eax, edx
lea ecx, [eax + 0x78b5ba84]
mov edx, 0x874a457b
sub edx, eax
and edx, 0xbc3cbd68
lea eax, [edx + eax*2]
add eax, 0xf16b7508
or ecx, 0xbc3cbd68
sub eax, ecx
add eax, 0xcb0d8812
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [0x100669f0]
mov ecx, eax
not ecx
or ecx, eax
not ecx
and ecx, dword [0x100669f4]
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 4]
mov dword [eax], edx
add ecx, 0xdb3bcd55
mov eax, dword [esi + 8]
mov dword [eax], ecx
mov eax, dword [0x100669f8]
mov ecx, dword [0x100669fc]
mov edx, eax
not edx
lea edi, [eax + edx*2]
or edx, ecx
sub edi, edx
and eax, ecx
add eax, edi
add eax, 0xb
mov ecx, dword [0x10070bd0]
cmp dword [0x10070bcc], eax
setl al
lea edx, [ecx - 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
jne 0x10013220
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov dword [esi + 4], eax
push str._a____
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1006d30c
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esi + 0x1c]
push dword [ecx]
call eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov edx, dword [0x10066694]
mov edi, edx
not edi
lea eax, [edx + edi*2]
add eax, 1
mov ecx, eax
not ecx
and ecx, 0x2f22551b
lea ebx, [edx + edi*2]
add ebx, ecx
add ebx, 1
xor eax, 0x2f22551b
sub ebx, eax
mov eax, dword [0x10066690]
lea ecx, [edi + eax]
and edi, 0xd0ddaae4
add edi, edx
xor edx, 0xd0ddaae4
sub edi, edx
mov edx, edi
not edx
and edx, ebx
add edx, edi
mov edi, edx
and edi, 0xd0ddaae4
mov ebx, edx
xor ebx, 0xd0ddaae4
add ebx, edi
mov edi, edx
not edi
and edi, 0x2f22551b
add edi, ebx
xor edx, 0x2f22551b
sub edx, edi
mov edi, ecx
not edi
and ecx, edx
add ecx, ecx
lea ecx, [ecx + edi*2]
sub ecx, edx
sub ecx, edx
xor edx, edi
sub ecx, edx
not eax
lea edx, [ecx + ecx]
sub edx, eax
mov edi, ecx
xor edi, eax
lea edx, [edx + edi*2]
mov edi, ecx
or edi, eax
add edi, edi
sub edx, edi
mov edi, ecx
not edi
or edi, eax
add edi, edx
and eax, ecx
lea edx, [edi + eax]
add eax, edi
add eax, 1
mov ecx, eax
not ecx
mov edi, ecx
and edi, 0xde185e8c
add edx, edi
add edx, 1
mov edi, ecx
and edi, 0x21e7a173
add edi, edx
or eax, 0x21e7a173
add eax, edi
or ecx, 0xde185e8c
sub eax, ecx
imul eax, eax, 0x9492759f
add eax, 0x2a9b1c04
mov ecx, eax
and ecx, 0x662ca137
xor eax, 0x662ca137
add eax, ecx
add eax, ecx
imul eax, eax, 0x9e97665f
lea ecx, [eax + 0x64eb0285]
not ecx
mov edx, ecx
and edx, 0x874a457a
add eax, edx
add eax, 0x64eb0285
or ecx, 0x78b5ba85
sub eax, ecx
lea ecx, [eax - 0xe948af6]
mov edx, ecx
not edx
and edx, 0xbc3cbd68
lea eax, [edx + eax*2]
add eax, 0xe2d6ea14
or ecx, 0xbc3cbd68
sub eax, ecx
add eax, 0x43c34297
mov ecx, eax
and ecx, 0x78b5ba85
lea edx, [eax + eax*2]
sub edx, ecx
mov ecx, eax
not ecx
and ecx, 0x74a457a
lea ecx, [edx + ecx*2]
or eax, 0x874a457a
sub ecx, eax
add ecx, 1
mov eax, dword [esi + 0x14]
mov dword [eax], ecx
mov eax, dword [esi + 0x20]
mov ecx, dword [esi + 4]
mov dword [eax], ecx
mov eax, dword [esi + 8]
mov dword [eax], 0xdb3bcd55
jmp 0x10012e89
mov edx, dword [0x10070bc8]
cmp dword [0x10070bc4], 0xa
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x10066a48]
mov edi, dword [0x10066a4c]
mov ebx, edx
and edx, edi
not edi
or ebx, edi
sub edi, ebx
add edx, edi
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
mov eax, dword [esi + 8]
mov dword [eax], 0x9e02d4eb
cmp cl, 1
jne 0x10013284
nop word cs:[eax + eax]
nop dword [eax + eax]
mov ecx, dword [0x10070bc0]
mov edx, dword [0x10066a60]
mov edi, dword [0x10066a64]
mov eax, edx
or eax, edi
not eax
add eax, edi
not edx
or edx, edi
sub eax, edx
add eax, 0xa
cmp dword [0x10070bbc], eax
setl byte [esi + 4]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, dword [0x10066a68]
mov edi, dword [0x10066a6c]
mov ebx, ecx
and ebx, edi
mov eax, ebx
sub eax, ecx
xor ecx, edi
add ecx, eax
not edi
add edi, ecx
lea eax, [ebx + edi]
add eax, 1
and edx, 1
cmp edx, eax
sete al
or al, byte [esi + 4]
je 0x10013220
jmp 0x100132a0
mov eax, dword [esi + 8]
mov dword [eax], 0x9e02d4eb
jmp 0x100131cb
mov edi, dword [esi + 8]
mov eax, dword [0x10070bb8]
cmp dword [0x10070bb4], 0xa
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete dl
or dl, cl
mov eax, dword [edi]
cmp dl, 1
jne 0x100132a3
cmp eax, 0xf253a628
jle 0x10013390
cmp eax, 0x4d753a6c
jg 0x10013430
cmp eax, 0x22f7f142
jle 0x10013541
cmp eax, 0x22f7f143
je 0x10013740
cmp eax, 0x35b69a67
je 0x100137b2
cmp eax, 0x430d615a
jne 0x10011db0
mov eax, dword [0x10066820]
mov ecx, dword [0x10066824]
mov edx, eax
and edx, ecx
mov edi, eax
or edi, ecx
not edi
add edi, edx
mov edx, dword [0x10070bb0]
xor eax, ecx
add eax, edi
add eax, 0xb
cmp dword [0x10070bac], eax
setl al
mov ecx, edx
not ecx
add ecx, edx
add ecx, edx
add ecx, 2
imul ecx, edx
mov ebx, dword [0x10066828]
mov edi, dword [0x1006682c]
mov edx, ebx
or edx, edi
not edx
add edx, ebx
not edi
or edi, ebx
sub edx, edi
and ecx, 1
cmp ecx, edx
sete cl
mov edx, eax
add dl, cl
mov ah, al
xor ah, cl
add ah, dl
or al, cl
add al, ah
test al, 1
jne 0x10012119
jmp 0x1001217f
cmp eax, 0xd9c3334d
jg 0x100134c0
cmp eax, 0x9e02d4ea
jle 0x100135bf
cmp eax, 0x9e02d4eb
je 0x10013804
cmp eax, 0xaf8d6209
je 0x1001385c
cmp eax, 0xd821fdc0
jne 0x10011db0
mov edx, dword [0x10070ba8]
mov eax, dword [0x10066898]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10070ba4], eax
setl byte [esi + 4]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x100668a0]
mov edi, dword [0x100668a4]
mov eax, edx
or eax, edi
mov ebx, eax
not ebx
lea eax, [eax + ebx*2]
mov ebx, edx
xor ebx, edi
not ebx
sub ebx, eax
and edx, edi
not edx
add edx, ebx
and ecx, 1
cmp ecx, edx
sete al
or al, byte [esi + 4]
add al, 1
test al, 1
je 0x10011f37
jmp 0x10011fb5
cmp eax, 0x69c45402
jle 0x10013642
cmp eax, 0x69c45403
je 0x100138ae
cmp eax, 0x7480adba
je 0x100138e0
cmp eax, 0x750b85f5
jne 0x10011db0
cmp dword [0x10070ba0], 0xa
mov edx, dword [0x10070b9c]
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov ebx, dword [0x10066878]
mov edi, dword [0x1006687c]
mov edx, ebx
or edx, edi
not edx
add edx, ebx
not edi
or edi, ebx
sub edx, edi
and ecx, 1
cmp ecx, edx
setne cl
sete dl
mov ah, al
and ah, dl
or dl, al
add dl, ah
add dl, cl
or al, cl
add al, dl
add al, 1
test al, 1
je 0x10012594
jmp 0x100125d3
cmp eax, 0xdb3bcd54
jle 0x100136b8
cmp eax, 0xdb3bcd55
je 0x10013951
cmp eax, 0xdce4c283
je 0x100139c5
cmp eax, 0xf23c1a35
jne 0x10011db0
mov eax, dword [0x10066938]
mov ecx, dword [0x1006693c]
mov edx, ecx
not edx
mov edi, eax
and edi, edx
xor ecx, eax
sub ecx, edi
or edx, eax
mov eax, dword [0x10070b98]
add ecx, edx
add ecx, 0xb
cmp dword [0x10070b94], ecx
setl cl
mov edx, eax
xor edx, 1
add edx, eax
mov edi, eax
xor edi, 0xfe
add edx, edi
add edx, 2
imul edx, eax
and cl, dl
add cl, dl
test cl, 1
je 0x10012053
jmp 0x100120d4
cmp eax, 0xf253a629
je 0x10013a07
cmp eax, 0xf3464d74
jne 0x10013b63
mov edx, dword [0x10070b90]
cmp dword [0x10070b8c], 0xa
setl al
mov ecx, edx
and ecx, 0xfffffffe
mov edi, edx
xor edi, 1
add edi, ecx
add edi, edx
lea ecx, [edx + edi]
add ecx, 0x746e4e2c
imul ecx, edx
mov edx, dword [0x100669e8]
mov edi, edx
not edi
or edi, edx
mov edx, dword [0x100669ec]
and edi, edx
sub edi, edx
and ecx, 1
cmp ecx, edi
sete cl
setne dl
or cl, al
and al, dl
add al, cl
not cl
add cl, al
add cl, dl
add cl, 1
test cl, 1
je 0x10012e89
jmp 0x10013027
cmp eax, 0x8b4910d2
je 0x10013a49
cmp eax, 0x8bf668f2
jne 0x10011db0
mov eax, dword [0x10066730]
mov ecx, dword [0x10066734]
mov edx, ecx
not edx
and edx, eax
add edx, edx
sub edx, eax
add edx, ecx
mov edi, eax
or edi, ecx
not edi
add edi, edx
mov edx, dword [0x10070b88]
and eax, ecx
add eax, edi
add eax, 0xb
cmp dword [0x10070b84], eax
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov ebx, dword [0x10066738]
mov edi, dword [str.X_r]
mov edx, ebx
or edx, edi
not edx
add edx, ebx
not edi
or edi, ebx
sub edx, edi
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
cmp cl, 1
je 0x10011e22
jmp 0x10011eed
cmp eax, 0x4d753a6d
je 0x10013a9e
cmp eax, 0x6637b2b9
jne 0x10011db0
mov eax, dword [0x10070b80]
cmp dword [0x10070b7c], 0xa
setge byte [esi + 4]
setl byte [esi + 0x10]
lea edx, [eax - 1]
imul edx, eax
mov ecx, dword [0x10066850]
mov ebx, dword [0x10066854]
mov eax, ecx
xor eax, ebx
lea eax, [ecx + eax*2]
mov edi, ecx
or edi, ebx
add edi, edi
sub eax, edi
mov edi, ecx
not edi
or edi, ebx
add edi, eax
and ecx, ebx
lea eax, [ecx + edi]
add eax, 1
and edx, 1
cmp edx, eax
setne al
or al, byte [esi + 0x10]
add al, byte [esi + 4]
test al, 1
jne 0x100121af
jmp 0x10012266
cmp eax, 0xd9c3334e
je 0x10013b11
cmp eax, 0xdafc508c
jne 0x10011db0
mov edx, dword [0x10070b78]
mov eax, dword [0x10066780]
xor eax, dword [0x10066784]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10070b74], eax
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x1006678c]
mov edi, edx
not edi
mov ebx, dword [0x10066788]
and edi, ebx
or ebx, edx
sub edi, ebx
add edi, edx
and ecx, 1
cmp ecx, edi
setne dl
sete cl
mov ah, al
or ah, cl
mov ch, ah
xor ch, 1
add ch, ah
xor cl, al
not cl
add cl, ch
add cl, dl
or al, dl
add al, cl
add al, 1
test al, 1
je 0x10011fd6
jmp 0x10012035
mov eax, dword [0x100668c0]
mov ecx, dword [0x100668c4]
mov edx, eax
mov edi, eax
or edi, ecx
not eax
or eax, ecx
not ecx
and edx, ecx
add edx, edx
sub edi, edx
mov edx, dword [0x10070b70]
add edi, ecx
sub edi, eax
add edi, 0xa
cmp dword [0x10070b6c], edi
setl byte [esi + 4]
lea ecx, [edx - 1]
imul ecx, edx
mov ebx, dword [0x100668c8]
mov edi, dword [0x100668cc]
mov eax, ebx
and eax, edi
mov edx, ebx
or edx, edi
not edx
add edx, eax
xor ebx, edi
lea eax, [ebx + edx]
add eax, 1
and ecx, 1
cmp ecx, eax
sete al
or al, byte [esi + 4]
cmp al, 1
je 0x1001261c
jmp 0x100126ad
mov edx, dword [0x10070b68]
mov ecx, edx
not ecx
cmp dword [0x10070b64], 0xa
setl al
mov edi, edx
and edi, 0x7ffffffe
and ecx, 0xfffffffe
lea ecx, [ecx + edi*2]
mov edi, edx
and edi, 1
add ecx, edi
add ecx, 3
imul ecx, edx
test cl, 1
sete dl
or dl, al
or cl, al
add al, dl
not dl
add dl, al
add cl, dl
add cl, 1
test cl, 1
je 0x100126ce
jmp 0x1001275f
mov edx, dword [0x10070b60]
mov edi, edx
not edi
cmp dword [0x10070b5c], 0xa
setge al
setl cl
mov ebx, edx
and ebx, 1
add ebx, edx
and edi, 0xfffffffe
add edi, ebx
mov ebx, edx
xor ebx, 1
add ebx, edi
add ebx, 2
imul ebx, edx
test bl, 1
sete dl
and bl, cl
mov ah, cl
or ah, dl
add bl, ah
not ah
add ah, bl
xor cl, dl
not cl
add cl, ah
add cl, al
test cl, 1
je 0x10012287
jmp 0x100122bd
mov eax, dword [0x10066910]
mov ecx, dword [0x10066914]
mov edx, eax
and edx, ecx
mov edi, eax
or edi, ecx
not edi
add edi, edx
xor eax, ecx
mov edx, dword [0x10070b58]
add eax, edi
add eax, 0xb
cmp dword [0x10070b54], eax
setl cl
setge ch
lea eax, [edx + 1]
imul eax, edx
test al, 1
sete dl
and ch, dl
or dl, cl
add dl, ch
or al, cl
add al, dl
test al, 1
je 0x1001276d
jmp 0x10012804
mov eax, dword [0x10070b50]
cmp dword [0x10070b4c], 0xa
setl cl
mov edx, eax
not edx
add edx, eax
add edx, eax
add edx, 2
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
je 0x100124d2
jmp 0x10012573
mov eax, dword [0x100667d0]
mov ecx, dword [str.td]
mov edx, eax
and edx, ecx
mov edi, eax
xor edi, ecx
add edi, edx
mov edx, dword [0x10070b48]
or eax, ecx
sub eax, edi
add eax, 0xa
cmp dword [0x10070b44], eax
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x100667d8]
mov edi, edx
not edi
mov ebx, dword [0x100667dc]
and edi, ebx
or ebx, edx
sub edi, ebx
add edi, edx
and ecx, 1
cmp ecx, edi
setne cl
sete dl
or dl, al
or cl, al
add al, dl
not dl
add dl, al
add cl, dl
add cl, 1
test cl, 1
je 0x1001241d
jmp 0x100124b1
mov eax, dword [0x10066a28]
mov ecx, dword [0x10066a2c]
mov edx, eax
xor edx, ecx
mov edi, eax
or edi, ecx
not edi
add edi, edx
mov edx, dword [0x10070b40]
and eax, ecx
add eax, edi
add eax, 0xb
cmp dword [0x10070b3c], eax
setl al
mov ecx, 1
sub ecx, edx
imul ecx, edx
mov edx, dword [0x10066a30]
mov edi, edx
not edi
mov ebx, dword [0x10066a34]
and edi, ebx
lea edi, [edx + edi*2]
sub edi, ebx
xor edx, ebx
sub edi, edx
and ecx, 1
cmp ecx, edi
sete cl
mov edx, eax
and dl, cl
or al, cl
add al, dl
not dl
add dl, al
test dl, 1
je 0x100131cb
jmp 0x10013284
mov edx, dword [0x10070b38]
cmp dword [0x10070b34], 0xa
setge cl
setl al
lea ebx, [edx + 1]
imul ebx, edx
test bl, 1
sete dl
and bl, al
and cl, dl
or cl, bl
mov ah, al
or ah, dl
add cl, ah
not ah
add ah, cl
and al, dl
not al
add al, ah
test al, 1
jne 0x10012c40
jmp 0x10012ceb
mov ecx, dword [0x10070b30]
cmp dword [0x10070b2c], 0xa
setl al
mov edx, ecx
and edx, 0xfffffffe
add edx, ecx
mov edi, ecx
or edi, 1
add edi, edx
add edi, ecx
mov edx, ecx
not edx
add edx, edi
add edx, 0xffffffff
imul edx, ecx
test dl, 1
sete cl
or cl, al
cmp cl, 1
je 0x10012d4b
jmp 0x10012e09
mov edx, dword [0x10070b28]
cmp dword [0x10070b24], 0xa
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edi, dword [0x10066760]
mov edx, edi
not edx
mov ebx, dword [0x10066764]
and edx, ebx
not ebx
or ebx, edi
not ebx
sub ebx, edx
and ecx, 1
cmp ecx, ebx
setne cl
sete dl
or dl, al
or cl, al
add al, dl
not dl
add dl, al
add cl, dl
test cl, 1
jne 0x100122ed
jmp 0x1001239f
mov ebx, dword [0x10070b20]
mov edx, dword [0x100667a8]
mov eax, dword [0x100667ac]
mov edi, edx
not edi
or edi, edx
and edi, eax
add edi, eax
not eax
lea eax, [edi + eax*2]
add eax, 0xc
cmp dword [0x10070b1c], eax
setge ah
setl al
mov ecx, ebx
not ecx
mov edi, ecx
and edi, 1
add edi, ebx
mov edx, ebx
xor ebx, 0xfffffffe
add ebx, edi
or ecx, 1
sub ebx, ecx
add ebx, 1
imul ebx, edx
test bl, 1
sete cl
and bl, al
and ah, cl
or ah, bl
mov dl, ah
mov ah, al
xor ah, cl
add ah, dl
or al, cl
add al, ah
add al, 1
test al, 1
je 0x100123c0
jmp 0x100123ff
cmp dword [0x10070b18], 0xa
mov edx, dword [0x10070b14]
setl byte [esi + 4]
mov ecx, edx
not ecx
add ecx, edx
add ecx, edx
imul ecx, edx
mov edx, dword [0x10066968]
mov edi, edx
not edi
mov ebx, dword [0x1006696c]
mov eax, edi
and eax, ebx
xor edx, ebx
not edx
add edx, eax
or edi, ebx
sub edx, edi
and ecx, 1
cmp ecx, edx
sete al
or al, byte [esi + 4]
cmp al, 1
je 0x10012834
jmp 0x10012a5d
cmp eax, 0xc1ffd5e
jne 0x10011db0
nop
mov ecx, dword [0x10066a18]
mov edx, dword [0x10066a1c]
mov eax, ecx
xor eax, ecx
not eax
and eax, edx
xor eax, ecx
xor ecx, edx
sub eax, ecx
add eax, 0xa
cmp dword [0x10070b10], eax
mov edx, dword [0x10070b0c]
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x10066a24]
mov edi, edx
not edi
mov ebx, dword [0x10066a20]
and edi, ebx
add edi, edx
or ebx, edx
sub edi, ebx
and ecx, 1
cmp ecx, edi
sete cl
mov edx, eax
and dl, cl
mov ah, al
or ah, cl
add dl, ah
not ah
add ah, dl
xor al, cl
not al
add al, ah
mov ecx, dword [esi + 0x20]
mov edi, dword [ecx]
test al, 1
je 0x10013b70
mov ecx, dword [esi + 0x48]
xor ecx, ebp
call fcn.10052020
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret