Function at 0x10015bb0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x34
mov ecx, dword [0x10067438]
mov edx, dword [0x1006743c]
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 [0x100709c8], eax
mov edx, dword [0x100709c4]
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x10067440]
mov esi, dword [0x10067444]
mov edi, esi
not edi
and edi, edx
add edi, esi
or edx, esi
sub edi, edx
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
sub ah, al
mov edx, dword [ebp + 8]
test ah, 1
jne 0x10015cd2
push eax
mov dword [ebp - 0x18], esp
push eax
mov eax, esp
cmp edx, dword [ebp + 0xc]
mov dword [ebp - 0x34], eax
setl byte [eax]
push eax
mov ebx, esp
mov eax, dword [0x10067448]
mov ecx, dword [0x1006744c]
mov edx, eax
xor edx, ecx
mov esi, eax
or esi, ecx
not esi
add esi, edx
and eax, ecx
add eax, esi
add eax, 0xadd1c80d
mov dword [ebx], eax
push eax
mov dword [ebp - 0x2c], esp
push eax
mov edi, esp
mov ecx, dword [0x10067450]
mov edx, dword [0x10067454]
mov eax, ecx
or eax, edx
not eax
add eax, ecx
not edx
or edx, ecx
sub eax, edx
add eax, 0x19e41cb9
mov dword [edi], eax
mov eax, dword [0x100709c0]
mov ecx, dword [0x10067458]
mov edx, dword [0x1006745c]
mov esi, ecx
not esi
and esi, edx
lea esi, [ecx + esi*2]
sub esi, edx
xor ecx, edx
sub esi, ecx
add esi, 0xa
cmp dword [0x100709bc], esi
setl cl
lea edx, [eax + eax]
mov esi, eax
not esi
add edx, esi
add edx, 2
imul edx, eax
test dl, 1
mov edx, dword [ebp + 8]
sete al
or al, cl
add al, 1
test al, 1
je 0x10015cf4
push eax
push eax
mov eax, esp
cmp edx, dword [ebp + 0xc]
setl byte [eax]
push eax
mov eax, esp
mov dword [eax], 0xadd1c80c
push eax
push eax
mov eax, esp
mov dword [eax], 0x19e41cb9
jmp 0x10015c29
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x20], ebx
nop word [eax + eax]
mov eax, dword [0x10067478]
mov ecx, dword [0x1006747c]
mov edx, eax
xor edx, ecx
lea edx, [eax + edx*2]
mov esi, eax
or esi, ecx
add esi, esi
sub edx, esi
mov esi, eax
not esi
or esi, ecx
add esi, edx
and eax, ecx
add eax, esi
add eax, 0xb
cmp dword [0x100709b8], eax
mov esi, dword [0x100709b4]
setge ch
setl cl
mov eax, esi
not eax
and eax, 1
add eax, eax
mov edx, esi
sub edx, eax
sub edx, esi
sub edx, esi
add edx, 1
imul edx, esi
mov edi, dword [0x10067480]
mov dword [ebp - 0x14], edi
mov esi, dword [0x10067484]
not edi
mov eax, edi
and eax, esi
mov ebx, dword [ebp - 0x14]
or ebx, esi
not ebx
add ebx, eax
or edi, esi
not esi
sub ebx, esi
or esi, dword [ebp - 0x14]
add esi, ebx
sub esi, edi
and edx, 1
cmp edx, esi
sete al
or cl, al
or ch, al
add al, cl
not cl
add cl, al
add cl, ch
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
add cl, 1
test cl, 1
jne 0x10015d00
cmp eax, 0xdf751218
jle 0x10015e40
cmp eax, 0x19e41cb8
jle 0x10015e9d
cmp eax, 0x2d9b4cdb
jle 0x10015f80
cmp eax, 0x2d9b4cdc
je 0x10016179
cmp eax, 0x30d5a4fd
je 0x10016202
cmp eax, 0x3d24d717
jne 0x10016480
mov edx, dword [0x100709b0]
cmp dword [0x100709ac], 0xa
setl al
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
mov edx, dword [0x100674d8]
mov esi, dword [0x100674dc]
mov edi, esi
not edi
or edi, esi
and edi, edx
sub edi, edx
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
sub cl, al
test cl, 1
je 0x10016d4f
jmp 0x10016de5
cmp eax, 0xc1efb7fc
jle 0x10015f12
cmp eax, 0xd6d94bbd
jle 0x10016022
cmp eax, 0xda2e5d50
je 0x1001622c
cmp eax, 0xda71bfe1
jne 0x10016466
mov eax, dword [0x100709a8]
cmp dword [0x100709a4], 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 0x10016ee6
jmp 0x10016f6c
cmp eax, 0xf3cb68bd
jg 0x10016062
cmp eax, 0xdf751219
je 0x1001626d
cmp eax, 0xf0189806
jne 0x10016480
mov edx, dword [0x100709a0]
cmp dword [0x1007099c], 0xa
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x10067500]
mov esi, dword [0x10067504]
mov edi, esi
not edi
and edi, edx
mov ebx, edx
not ebx
add ebx, ebx
lea edi, [ebx + edi*2]
and edx, esi
not edx
add edx, edx
sub edx, edi
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
add cl, 1
test cl, 1
je 0x10016a6f
jmp 0x10016af1
cmp eax, 0x9f987fba
jg 0x100160f4
cmp eax, 0x8e5b6a0c
je 0x100162ce
cmp eax, 0x8fda112a
jne 0x10016480
mov eax, dword [0x100676b0]
mov ecx, dword [0x100676b4]
mov edx, ecx
not edx
and edx, eax
mov esi, eax
or esi, ecx
add esi, edx
xor ecx, eax
not ecx
add ecx, esi
not eax
add eax, ecx
add eax, 0xc
cmp dword [0x10070998], eax
mov eax, dword [0x10070994]
setl cl
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
je 0x100164ed
jmp 0x10016737
cmp eax, 0x19e41cb9
je 0x10016346
cmp eax, 0x2cdc3b86
jne 0x10016480
mov eax, dword [0x10067520]
mov edx, dword [0x10067524]
mov ecx, eax
and ecx, edx
mov esi, eax
xor esi, edx
sub esi, ecx
mov edi, edx
not edi
or edi, eax
add edi, esi
not eax
or eax, edx
mov edx, dword [0x10070990]
add eax, edi
add eax, ecx
add eax, 0xc
cmp dword [0x1007098c], eax
setl al
lea ecx, [edx + edx]
mov esi, edx
not esi
add ecx, esi
add ecx, 0x48f42618
imul ecx, edx
mov edx, dword [0x10067528]
mov esi, dword [0x1006752c]
mov edi, edx
or edx, esi
not esi
and edi, esi
not edx
add edx, edi
sub edx, esi
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
sub cl, al
test cl, 1
je 0x10016c00
jmp 0x10016c8b
cmp eax, 0xc1efb7fd
je 0x10016370
cmp eax, 0xd4192f8c
jne 0x10016480
cmp dword [0x10070988], 0xa
mov eax, dword [0x10070984]
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
je 0x10016a03
jmp 0x10016a64
cmp eax, 0xf3cb68be
je 0x100163b0
cmp eax, 0xe3dc17c
jne 0x10016480
mov eax, dword [0x100675e8]
mov ecx, dword [0x100675ec]
mov edx, eax
not edx
and edx, ecx
not ecx
or ecx, eax
lea eax, [edx + ecx]
add eax, 0xb
cmp dword [0x10070980], eax
mov esi, dword [0x1007097c]
setge cl
setl al
mov edx, esi
not edx
add edx, esi
add edx, esi
imul edx, esi
and edx, 1
mov esi, dword [0x100675f0]
mov edi, dword [0x100675f4]
mov ebx, esi
xor ebx, esi
not ebx
and ebx, edi
xor ebx, esi
xor esi, edi
sub ebx, esi
cmp edx, ebx
sete dl
setne ah
and ah, al
and cl, dl
or cl, ah
mov ah, al
xor ah, dl
add ah, cl
or al, dl
add al, ah
add al, 1
test al, 1
je 0x10016b30
jmp 0x10016bdf
cmp eax, 0x9f987fbb
je 0x10016401
cmp eax, 0xb9bdfb51
jne 0x10016480
mov ecx, dword [0x10070978]
mov edx, dword [0x10067750]
mov esi, dword [0x10067754]
mov eax, edx
or eax, esi
not eax
add eax, esi
not edx
or edx, esi
sub eax, edx
add eax, 0xa
cmp dword [0x10070974], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, dword [0x10067758]
mov esi, dword [0x1006775c]
mov edi, ecx
and edi, esi
mov ebx, edi
sub ebx, ecx
xor ecx, esi
add ecx, ebx
not esi
add esi, ecx
lea ecx, [edi + esi]
add ecx, 1
and edx, 1
cmp edx, ecx
sete cl
or cl, al
add cl, 1
test cl, 1
je 0x10016968
jmp 0x100169e0
mov edx, dword [0x10067708]
mov ecx, dword [0x1006770c]
mov eax, edx
not eax
mov esi, eax
and esi, ecx
add esi, esi
mov edi, edx
or edi, ecx
sub edi, esi
not ecx
or ecx, edx
mov edx, dword [0x10070970]
sub edi, ecx
add eax, edi
add eax, 0xa
cmp dword [0x1007096c], eax
setl al
mov ecx, edx
not ecx
add ecx, edx
add ecx, edx
add ecx, 2
imul ecx, edx
mov edx, dword [0x10067710]
mov esi, dword [0x10067714]
mov edi, edx
or edi, esi
not edi
add edi, esi
not edx
or edx, esi
sub edi, edx
and ecx, 1
cmp ecx, edi
sete cl
or cl, al
add cl, 1
mov eax, dword [ebp + 0xc]
not eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 8]
not eax
mov dword [ebp - 0x24], eax
test cl, 1
je 0x100174e4
jmp 0x10017899
cmp dword [0x10070968], 0xa
mov eax, dword [0x10070964]
setl cl
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
je 0x10016fac
jmp 0x10017031
mov eax, dword [0x100676e0]
mov ecx, eax
not ecx
or ecx, eax
not ecx
and ecx, dword [0x100676e4]
mov eax, dword [0x10070960]
add ecx, 0xa
cmp dword [0x1007095c], ecx
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
add al, 1
test al, 1
je 0x100172f5
jmp 0x10017437
mov edx, dword [0x10070958]
cmp dword [0x10070954], 0xa
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x10067690]
mov esi, dword [0x10067694]
mov edi, edx
xor edi, edx
not edi
and edi, esi
xor edi, edx
mov ebx, edx
or ebx, esi
not ebx
add ebx, edi
and edx, esi
add edx, ebx
add edx, 1
and ecx, 1
cmp ecx, edx
setne cl
sete dl
mov ah, al
and ah, dl
and cl, al
add cl, ah
add cl, al
or al, dl
add al, cl
test al, 1
jne 0x1001721c
jmp 0x100172cf
mov edx, dword [0x10067638]
mov eax, dword [0x1006763c]
mov ecx, edx
not ecx
mov edi, ecx
and edi, eax
mov esi, edx
or esi, eax
not esi
add esi, edi
or ecx, eax
not eax
sub esi, eax
or eax, edx
add eax, esi
sub eax, ecx
add eax, 0xa
cmp dword [0x10070950], eax
mov edx, dword [0x1007094c]
setl al
mov esi, edx
not esi
mov ecx, esi
and ecx, 0xfffffffe
add ecx, edx
or esi, 1
sub ecx, esi
add ecx, 2
imul ecx, edx
test cl, 1
sete dl
mov ah, al
and ah, dl
mov dh, ah
add dh, al
mov ebx, eax
xor bl, dl
add bl, dh
or al, dl
add al, bl
add al, cl
sub al, ah
test al, 1
je 0x10017191
jmp 0x100171eb
cmp dword [0x10070948], 0xa
mov eax, dword [0x10070944]
setl cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
je 0x10016cd1
jmp 0x10016d18
mov eax, dword [0x10070940]
mov ecx, dword [0x10067610]
and ecx, dword [0x10067614]
mov edx, ecx
not edx
add ecx, edx
add ecx, 0xb
cmp dword [0x1007093c], ecx
setl cl
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
add al, 1
test al, 1
je 0x100170df
jmp 0x10017170
mov esi, dword [0x10070938]
cmp dword [0x10070934], 0xa
setge al
setl cl
mov edx, esi
not edx
imul edx, esi
and edx, 1
mov esi, dword [0x100675c8]
mov edi, esi
not edi
or edi, esi
not edi
and edi, dword [0x100675cc]
cmp edx, edi
sete dl
mov ah, cl
or ah, dl
add ah, cl
or al, dl
add al, ah
and cl, dl
sub al, cl
test al, 1
je 0x10017052
jmp 0x10017099
mov esi, dword [0x10070930]
cmp dword [0x1007092c], 0xa
setge ch
setl cl
lea edx, [esi - 1]
imul edx, esi
mov esi, dword [0x10067550]
mov edi, dword [0x10067554]
mov ebx, esi
and ebx, edi
sub ebx, edi
sub ebx, edi
mov eax, esi
xor eax, edi
add eax, ebx
add eax, edi
not esi
or esi, edi
add eax, esi
add eax, 1
and edx, 1
cmp edx, eax
setne al
sete dl
mov ah, cl
or ah, dl
xor cl, dl
not cl
add cl, ah
add cl, al
add cl, ch
test cl, 1
je 0x10016e1f
jmp 0x10016ec5
cmp eax, 0xd6d94bbe
je 0x10017c20
nop word cs:[eax + eax]
nop dword [eax + eax]
mov edx, dword [0x10070928]
mov ecx, dword [0x10067498]
mov esi, dword [0x1006749c]
mov eax, ecx
or eax, esi
not eax
add eax, esi
not ecx
or ecx, esi
sub eax, ecx
add eax, 0xa
cmp dword [0x10070924], eax
setl al
mov ecx, 1
sub ecx, edx
imul ecx, edx
mov esi, dword [0x100674a0]
mov edx, dword [0x100674a4]
mov edi, esi
and edi, edx
lea ebx, [esi + esi]
sub ebx, edi
mov edi, esi
or edi, edx
not edi
lea edi, [ebx + edi*2]
not edx
sub edi, edx
or edx, esi
sub edi, edx
and ecx, 1
cmp ecx, edi
sete cl
or cl, al
je 0x10016480
jmp 0x10017840
mov ebx, dword [0x10067420]
mov ecx, dword [0x10067424]
mov dword [ebp - 0x24], ecx
mov esi, ebx
not esi
mov edi, esi
mov dword [ebp - 0x14], ebx
sub edi, ebx
sub edi, esi
mov eax, esi
and eax, ecx
mov esi, ecx
not esi
and ebx, esi
mov edx, eax
or edx, ebx
lea ecx, [eax + edx]
mov dword [ebp - 0x1c], ecx
not edx
add edx, dword [ebp - 0x1c]
not ebx
or ebx, eax
sub edx, ebx
mov eax, edx
and eax, 0xd085c379
mov ebx, edx
xor ebx, 0x2f7a3c86
add ebx, eax
mov eax, edx
not eax
or eax, 0x2f7a3c86
add eax, ebx
mov ebx, edx
or edx, 0xd085c379
add edx, eax
and ebx, 0x2f7a3c86
lea eax, [edx + ebx]
add edx, ebx
add edx, 0x2f7a3c88
mov ebx, edx
and ebx, 0xd085c37a
add eax, ebx
add eax, 0x2f7a3c88
not edx
and edx, 0xd085c37a
add edx, eax
lea eax, [edi - 1]
neg edi
mov ebx, eax
and ebx, 0x1c180512
and edi, 0x63e7faed
lea edi, [edi + ebx*2]
xor eax, 0x9c180512
add eax, edi
add eax, 1
mov edi, dword [ebp - 0x14]
and edi, 0x63e7faed
or edi, eax
mov dword [ebp - 0x14], edi
mov edi, esi
and edi, 0x9c180512
add edi, esi
mov ecx, dword [ebp - 0x24]
and ecx, 0x63e7faed
add edi, ecx
or esi, 0x63e7faed
sub edi, esi
mov esi, ecx
not esi
mov eax, edi
and eax, esi
lea eax, [ecx + eax*2]
mov ebx, edi
xor ebx, ecx
sub eax, ebx
or ecx, edi
add eax, ecx
not ecx
add ecx, eax
or esi, edi
sub ecx, esi
mov edi, dword [ebp - 0x14]
mov eax, edi
and eax, ecx
sub eax, ecx
sub eax, ecx
mov esi, edi
xor esi, ecx
lea eax, [eax + esi*2]
add eax, ecx
not edi
or edi, ecx
lea ecx, [edi + eax]
add ecx, 1
mov eax, ecx
not eax
add eax, eax
add eax, ecx
add eax, 1
mov esi, eax
and esi, 0x1ff91816
mov edi, eax
xor edi, 0x1ff91816
add edi, esi
xor eax, 0xe006e7e9
lea esi, [eax + edi]
add esi, 1
and ecx, 0xe006e7e9
mov eax, ecx
not eax
and eax, esi
add eax, ecx
mov ecx, eax
and ecx, 0x6006e7e9
add ecx, ecx
mov esi, eax
xor esi, 0xe006e7e9
sub esi, ecx
mov ecx, eax
or ecx, 0xe006e7e9
add ecx, esi
mov esi, eax
xor esi, 0x1ff91816
add esi, ecx
or eax, 0x1ff91816
add eax, esi
mov ecx, edx
neg ecx
add ecx, ecx
sub ecx, eax
add ecx, edx
mov eax, 0x9f44ce02
sub eax, ecx
imul ecx, eax, 0xb5a7e301
lea eax, [ecx - 0x489d6816]
mov edx, eax
and edx, 0x7ce8f8b2
add ecx, edx
add ecx, 0xb76297ea
mov edx, eax
not edx
and edx, 0x8317074d
add edx, ecx
xor eax, 0x8317074d
sub edx, eax
imul eax, edx, 0x82a11d01
cmp dword [ebp + 0xc], eax
mov eax, 0xd4ecd2b6
mov ecx, 0xf52129c4
cmovg eax, ecx
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov eax, dword [0x100676c0]
mov ecx, dword [0x100676c4]
mov edx, eax
and edx, ecx
mov esi, eax
xor esi, ecx
add esi, edx
or eax, ecx
sub eax, esi
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [0x100676d0]
mov ecx, dword [0x100676d4]
mov edx, eax
not edx
mov esi, edx
and esi, ecx
or eax, ecx
sub esi, eax
sub esi, edx
mov ecx, dword [0x10070920]
add esi, 9
cmp dword [0x1007091c], esi
setl al
mov edx, 1
sub edx, ecx
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
and dl, cl
or al, cl
not al
add al, dl
not dl
add dl, al
mov eax, dword [ebp - 0x10]
mov dword [eax], 0xb9bdfb51
test dl, 1
jne 0x10017840
mov edi, dword [0x10067420]
mov dword [ebp - 0x28], edi
mov ecx, dword [0x10067424]
mov dword [ebp - 0x1c], ecx
mov esi, edi
not esi
mov eax, esi
and eax, ecx
not ecx
mov dword [ebp - 0x24], ecx
and edi, ecx
mov edx, eax
and edx, edi
mov ebx, eax
or ebx, edi
sub ebx, edx
mov ecx, eax
xor ecx, edi
add ecx, ebx
mov ebx, edi
not ebx
or ebx, eax
add ebx, ecx
not eax
or eax, edi
add eax, ebx
lea ecx, [eax + edx]
add eax, edx
add eax, 2
not eax
mov edx, eax
and edx, 0x2f7a3c86
add ecx, edx
add ecx, 2
mov edx, eax
and edx, 0xd085c379
add edx, ecx
sub edx, eax
lea ecx, [edx + 0x2f7a3c86]
mov edi, ecx
or edi, 0xd085c37a
lea eax, [edx + edi]
add eax, 0x2f7a3c86
not edi
add edi, eax
mov eax, ecx
or eax, 0x2f7a3c85
sub edi, eax
and ecx, 0xd085c37a
lea eax, [edi + ecx]
mov dword [ebp - 0x14], eax
add ecx, edi
add ecx, 0xffffffff
mov eax, dword [ebp - 0x28]
mov edi, eax
and edi, 0x63e7faed
mov ebx, esi
and esi, 0x63e7faed
sub edi, esi
or eax, 0x9c180512
sub edi, eax
and ebx, 0x9c180512
lea edx, [edi - 1]
or edx, ebx
lea esi, [ebx + edx]
not edx
add edx, esi
neg edi
or edi, ebx
sub edx, edi
mov ebx, dword [ebp - 0x24]
mov esi, ebx
and esi, 0x9c180512
mov edi, ebx
and edi, 0x63e7faed
lea edi, [esi + edi*2]
mov esi, dword [ebp - 0x1c]
mov eax, esi
xor eax, 0x63e7faed
sub edi, eax
and esi, 0x63e7faed
add edi, esi
lea esi, [eax + esi*2]
mov eax, ebx
or eax, 0x63e7faed
sub edi, eax
add esi, eax
add esi, 0x9c180514
add edi, 0x9c180512
mov eax, edi
and eax, esi
mov ebx, edi
or ebx, esi
lea eax, [ebx + eax*2]
mov ebx, edi
xor ebx, esi
add ebx, eax
not esi
add esi, ebx
not edi
add esi, edi
add esi, 2
mov eax, edx
xor eax, esi
not esi
mov edi, edx
and edi, esi
mov ebx, eax
sub ebx, edi
add ebx, eax
or esi, edx
lea edx, [esi + ebx]
add edx, 1
mov eax, edx
not eax
mov esi, eax
or esi, 0x1ff91816
neg esi
lea edi, [eax + esi]
add edi, 0x1ff91816
mov eax, edx
and eax, 0xe006e7e9
mov esi, edx
or esi, 0xe006e7e9
sub esi, eax
mov eax, edx
xor eax, 0x1ff91816
add eax, esi
or edx, 0x1ff91816
lea esi, [edx + eax]
add esi, 0xe006e7eb
or esi, edi
mov edx, esi
not edx
mov eax, edx
and eax, 0xe006e7e9
sub eax, esi
mov edi, esi
xor edi, 0xe006e7e9
add edi, eax
or esi, 0x1ff91816
add esi, edi
sub edx, esi
mov eax, dword [ebp - 0x14]
neg eax
and eax, edx
sub eax, ecx
and edx, ecx
add edx, eax
mov eax, 0x1fa56964
sub eax, edx
mov ecx, eax
and ecx, 0xe05a969d
mov edx, eax
xor edx, 0x1fa56962
sub ecx, edx
or eax, 0x1fa56962
add eax, ecx
add eax, 0xe05a969e
cmp dword [ebp + 0xc], eax
mov eax, 0xd4ecd2b6
mov ecx, 0xf52129c4
cmovg eax, ecx
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov eax, dword [0x10067810]
mov ecx, dword [0x10067814]
mov edx, eax
not edx
and edx, ecx
or ecx, eax
sub edx, ecx
add edx, eax
mov eax, dword [ebp - 0x2c]
mov dword [eax], edx
mov ecx, dword [0x10067818]
mov edx, dword [0x1006781c]
mov eax, ecx
or eax, edx
not eax
add eax, ecx
not edx
or edx, ecx
sub eax, edx
add eax, 0xb9bdfb51
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x100164ed
mov edx, dword [0x10070918]
mov ecx, dword [0x10067768]
mov esi, dword [0x1006776c]
mov eax, ecx
or eax, esi
not eax
add eax, esi
not ecx
or ecx, esi
sub eax, ecx
add eax, 0xa
cmp dword [0x10070914], eax
setl al
mov ecx, 1
sub ecx, edx
imul ecx, edx
mov esi, dword [0x10067770]
mov edx, dword [0x10067774]
mov edi, esi
and edi, edx
lea ebx, [esi + esi]
sub ebx, edi
mov edi, esi
or edi, edx
not edi
lea edi, [ebx + edi*2]
not edx
sub edi, edx
or edx, esi
sub edi, edx
and ecx, 1
cmp ecx, edi
sete cl
or cl, al
mov eax, dword [ebp - 0x10]
mov dword [eax], 0x19e41cb9
cmp cl, 1
je 0x10017840
mov eax, dword [0x10067830]
mov ecx, eax
not ecx
or ecx, eax
not ecx
and ecx, dword [0x10067834]
add ecx, 0x19e41cb9
mov eax, dword [ebp - 0x10]
mov dword [eax], ecx
jmp 0x10016968
mov eax, dword [0x10067678]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10070910], eax
mov edx, dword [0x1007090c]
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x10067680]
mov esi, dword [0x10067684]
mov edi, edx
or edi, esi
mov ebx, edi
not ebx
lea edi, [edi + ebx*2]
mov ebx, edx
xor ebx, esi
not ebx
sub ebx, edi
and edx, esi
not edx
add edx, ebx
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
mov eax, dword [ebp - 0x10]
mov dword [eax], 0xb9bdfb51
jne 0x10017840
mov eax, dword [ebp - 0x10]
mov dword [eax], 0xb9bdfb51
jmp 0x10016a03
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xf52129c4
mov eax, 0x2cdc3b86
mov ecx, 0x30d5a4fd
cmovl eax, ecx
mov ecx, dword [0x10067510]
mov edx, dword [0x10067514]
mov esi, edx
not esi
and esi, ecx
add esi, esi
sub esi, ecx
add esi, edx
mov edi, ecx
or edi, edx
not edi
add edi, esi
mov esi, dword [0x10070908]
and ecx, edx
add ecx, edi
add ecx, 0xb
cmp dword [0x10070904], ecx
setl cl
lea edx, [esi - 1]
imul edx, esi
mov esi, dword [0x10067518]
mov edi, dword [0x1006751c]
mov ebx, esi
or ebx, edi
not ebx
add ebx, esi
not edi
or edi, esi
sub ebx, edi
and edx, 1
cmp edx, ebx
mov edx, dword [ebp - 0x10]
mov dword [edx], eax
sete al
or al, cl
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100677b8]
mov edx, dword [0x100677bc]
mov esi, edx
not esi
lea edi, [edx + esi*2]
or esi, ecx
sub edi, esi
and ecx, edx
add ecx, edi
add ecx, 0xf52129c5
cmp eax, ecx
mov eax, 0x2cdc3b86
mov ecx, 0x30d5a4fd
cmovl eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016a6f
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100675f8]
mov edx, dword [0x100675fc]
mov esi, edx
not esi
and esi, ecx
add esi, edx
or ecx, edx
sub esi, ecx
add esi, 0xadd1c80c
cmp eax, esi
mov eax, 0x8e5b6a0c
mov ecx, 0xdf751219
cmove eax, ecx
mov ecx, dword [0x10067600]
mov edx, dword [0x10067604]
mov esi, ecx
and esi, edx
mov edi, ecx
or edi, edx
not edi
add edi, esi
xor ecx, edx
add ecx, edi
add ecx, 0xb
cmp dword [0x10070900], ecx
mov esi, dword [0x100708fc]
setl cl
mov edx, esi
not edx
add edx, esi
add edx, esi
add edx, 0x550aaf26
imul edx, esi
mov esi, dword [0x10067608]
mov edi, dword [0x1006760c]
mov ebx, esi
or ebx, edi
not ebx
add ebx, esi
not edi
or edi, esi
sub ebx, edi
and edx, 1
cmp edx, ebx
mov edx, dword [ebp - 0x10]
mov dword [edx], eax
sete al
mov edx, ecx
add dl, al
mov ah, cl
xor ah, al
add ah, dl
or cl, al
add cl, ah
test cl, 1
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xadd1c80c
mov eax, 0x8e5b6a0c
mov ecx, 0xdf751219
cmove eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016b30
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x10067530]
mov edx, dword [0x10067534]
mov esi, ecx
and esi, edx
mov edi, ecx
or edi, edx
not edi
add edi, esi
xor ecx, edx
add ecx, edi
add ecx, 0x71704313
cmp eax, ecx
mov ecx, 0x9f987fbb
mov eax, 0xda71bfe1
cmovl ecx, eax
cmp dword [0x100708f8], 0xa
mov esi, dword [0x100708f4]
setl al
lea edx, [esi + 1]
imul edx, esi
mov esi, dword [0x10067540]
mov edi, esi
not edi
mov ebx, dword [0x10067544]
and edi, ebx
not ebx
or ebx, esi
not ebx
sub ebx, edi
and edx, 1
cmp edx, ebx
mov edx, dword [ebp - 0x10]
mov dword [edx], ecx
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 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100677c0]
mov edx, dword [0x100677c4]
mov esi, ecx
mov edi, ecx
or edi, edx
not ecx
or ecx, edx
not edx
and esi, edx
add esi, esi
sub edi, esi
add edi, edx
sub edi, ecx
add edi, 0x71704312
cmp eax, edi
mov eax, 0x9f987fbb
mov ecx, 0xda71bfe1
cmovl eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016c00
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov eax, dword [0x100674b8]
mov ecx, eax
not ecx
lea eax, [eax + ecx + 0x3d24d718]
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov eax, dword [0x100708f0]
cmp dword [0x100708ec], 0xa
setl cl
mov ebx, eax
not ebx
add ebx, eax
add ebx, eax
imul ebx, eax
test bl, 1
sete al
or al, cl
jne 0x10017840
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov eax, dword [0x100677a8]
mov ecx, dword [0x100677ac]
mov edx, eax
xor edx, eax
not edx
and edx, ecx
xor edx, eax
mov esi, eax
or esi, ecx
not esi
add esi, edx
and eax, ecx
add eax, esi
add eax, 0x3d24d718
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016cd1
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100674e0]
mov edx, dword [0x100674e4]
mov esi, ecx
mov edi, ecx
or edi, edx
not ecx
or ecx, edx
not edx
and esi, edx
add esi, esi
sub edi, esi
add edi, edx
sub edi, ecx
add edi, 0xd4ecd2b6
cmp eax, edi
mov eax, 0xf0189806
mov ecx, 0xf3cb68be
cmovl eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov edx, dword [0x100708e8]
mov esi, edx
not esi
cmp dword [0x100708e4], 0xa
setge cl
setl al
mov edi, edx
and edi, 1
add edi, edx
and esi, 0xfffffffe
add esi, edi
mov edi, edx
xor edi, 1
lea ebx, [edi + esi]
add ebx, 2
imul ebx, edx
test bl, 1
sete dl
and bl, al
mov ah, al
or ah, dl
add bl, ah
not ah
add ah, bl
xor al, dl
not al
add al, ah
add al, cl
add al, 1
test al, 1
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100677b4]
mov edx, ecx
not edx
or edx, ecx
mov ecx, dword [0x100677b0]
and edx, ecx
sub edx, ecx
add edx, 0xd4ecd2b6
cmp eax, edx
mov eax, 0xf0189806
mov ecx, 0xf3cb68be
cmovl eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016d4f
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x10067558]
mov edx, dword [0x1006755c]
mov esi, edx
not esi
mov edi, ecx
and edi, esi
xor edx, ecx
sub edx, edi
or esi, ecx
lea ecx, [edx + esi]
add ecx, 0x71704313
cmp eax, ecx
mov eax, 0x8e5b6a0c
mov ecx, 0x8fda112a
cmove eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov edx, dword [0x100708e0]
mov eax, dword [0x10067560]
xor eax, dword [0x10067564]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x100708dc], eax
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x10067568]
mov esi, dword [0x1006756c]
mov edi, esi
not edi
and edi, edx
or edx, esi
sub edi, edx
add edi, esi
and ecx, 1
cmp ecx, edi
setne dl
sete cl
mov ah, al
or ah, cl
mov ch, ah
not ch
add ch, ah
xor cl, al
not cl
add cl, ch
add cl, dl
or al, dl
add al, cl
test al, 1
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x71704312
mov eax, 0x8e5b6a0c
mov ecx, 0x8fda112a
cmove eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016e1f
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xf52129c4
mov eax, 0x8e5b6a0c
mov ecx, 0xda2e5d50
cmove eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov ecx, dword [0x100708d8]
mov eax, dword [0x10067588]
mov edx, dword [0x1006758c]
mov esi, eax
not esi
or esi, eax
and esi, edx
add esi, edx
not edx
lea eax, [esi + edx*2]
add eax, 0xc
cmp dword [0x100708d4], eax
setge dl
setl al
mov esi, ecx
not esi
mov edi, esi
and edi, 1
add edi, ecx
mov ebx, ecx
xor ebx, 0xfffffffe
add ebx, edi
or esi, 1
sub ebx, esi
add ebx, 1
imul ebx, ecx
test bl, 1
sete cl
and bl, al
and dl, cl
or dl, bl
mov ah, al
xor ah, cl
add ah, dl
or al, cl
add al, ah
test al, 1
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100677d0]
mov edx, dword [0x100677d4]
mov esi, ecx
and esi, edx
mov edi, ecx
or edi, edx
not edi
add edi, esi
xor ecx, edx
add ecx, edi
add ecx, 0xf52129c5
cmp eax, ecx
mov eax, 0x8e5b6a0c
mov ecx, 0xda2e5d50
cmove eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016ee6
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xd4ecd2b6
mov eax, 0x8e5b6a0c
mov ecx, 0xd6d94bbe
cmove eax, ecx
mov ecx, dword [0x100675b0]
mov edx, dword [0x100675b4]
mov esi, ecx
and esi, edx
mov edi, ecx
xor edi, edx
add edi, esi
mov esi, dword [0x100708d0]
or ecx, edx
sub ecx, edi
add ecx, 0xa
cmp dword [0x100708cc], ecx
setl cl
lea edx, [esi - 1]
imul edx, esi
mov esi, dword [0x100675b8]
mov edi, esi
not edi
mov ebx, dword [0x100675bc]
and edi, ebx
or ebx, esi
sub edi, ebx
add edi, esi
and edx, 1
cmp edx, edi
mov edx, dword [ebp - 0x10]
mov dword [edx], eax
setne al
sete dl
or dl, cl
or al, cl
add cl, dl
not dl
add dl, cl
add al, dl
test al, 1
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xd4ecd2b6
mov eax, 0x8e5b6a0c
mov ecx, 0xd6d94bbe
cmove eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10016fac
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xadd1c80c
mov eax, 0xe3dc17c
mov ecx, 0xc1efb7fd
cmovl eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov eax, dword [0x100708c8]
cmp dword [0x100708c4], 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
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100677e0]
mov edx, dword [0x100677e4]
mov esi, edx
not esi
and esi, ecx
mov edi, ecx
or edi, edx
add edi, esi
xor edx, ecx
not edx
add edx, edi
not ecx
add ecx, edx
add ecx, 0xadd1c80e
cmp eax, ecx
mov eax, 0xe3dc17c
mov ecx, 0xc1efb7fd
cmovl eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10017052
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x10067620]
mov edx, dword [0x10067624]
mov esi, ecx
and ecx, edx
not edx
or esi, edx
sub edx, esi
add ecx, edx
add ecx, 0x9c17c710
cmp eax, ecx
mov edx, 0x8e5b6a0c
mov eax, 0x2d9b4cdc
cmove edx, eax
cmp dword [0x100708c0], 0xa
mov edi, dword [0x100708bc]
setge byte [ebp - 0x14]
setl byte [ebp - 0x1c]
lea esi, [edi - 1]
imul esi, edi
mov eax, dword [0x10067630]
mov ebx, dword [0x10067634]
mov edi, eax
xor edi, ebx
lea edi, [eax + edi*2]
mov ecx, eax
or ecx, ebx
add ecx, ecx
sub edi, ecx
mov ecx, eax
not ecx
or ecx, ebx
add ecx, edi
and eax, ebx
add eax, ecx
add eax, 1
and esi, 1
cmp esi, eax
mov eax, dword [ebp - 0x10]
mov dword [eax], edx
setne al
or al, byte [ebp - 0x1c]
add al, byte [ebp - 0x14]
test al, 1
jne 0x10017840
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x9c17c710
mov eax, 0x8e5b6a0c
mov ecx, 0x2d9b4cdc
cmove eax, ecx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x100170df
cmp dword [0x100708b8], 0xa
mov edx, dword [0x100708b4]
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x10067658]
mov esi, dword [0x1006765c]
mov edi, edx
or edi, esi
not edi
add edi, edx
not esi
or esi, edx
sub edi, esi
and ecx, 1
cmp ecx, edi
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
mov ecx, dword [ebp - 0x10]
mov dword [ecx], 0xd4192f8c
test al, 1
jne 0x10017840
mov eax, dword [0x100677f8]
mov ecx, dword [0x100677fc]
mov edx, ecx
not edx
and edx, eax
mov esi, eax
not esi
add esi, esi
lea edx, [esi + edx*2]
and eax, ecx
not eax
add eax, eax
sub eax, edx
add eax, 0xd4192f8c
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x10017191
mov eax, dword [ebp - 0x34]
cmp byte [eax], 0
mov ecx, 0x9c17c710
mov eax, 0x71704312
cmovne ecx, eax
mov dword [ebp - 0x14], ecx
mov edx, dword [0x10067698]
mov esi, dword [0x1006769c]
mov edi, esi
not edi
lea eax, [esi + edi*2]
or edi, edx
sub eax, edi
mov dword [ebp - 0x1c], eax
and edx, esi
mov esi, dword [0x100676a0]
mov edi, dword [0x100676a4]
mov ebx, esi
or ebx, edi
mov eax, esi
not esi
or esi, edi
not edi
and eax, edi
add eax, eax
sub ebx, eax
add ebx, edi
sub ebx, esi
mov eax, dword [0x100708b0]
add ebx, 0xa
cmp dword [0x100708ac], ebx
setl byte [ebp - 0x24]
lea esi, [eax + 1]
imul esi, eax
mov ebx, dword [0x100676a8]
mov edi, dword [0x100676ac]
mov ecx, ebx
and ecx, edi
mov eax, ebx
or eax, edi
not eax
add eax, ecx
xor ebx, edi
add eax, ebx
add eax, 1
and esi, 1
cmp esi, eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x14]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
lea eax, [eax + edx - 0x464204ae]
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
sete al
or al, byte [ebp - 0x24]
jne 0x10017840
mov eax, dword [ebp - 0x34]
cmp byte [eax], 0
mov eax, 0x9c17c710
mov ecx, 0x71704312
cmovne eax, ecx
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov eax, dword [ebp - 0x10]
mov dword [eax], 0xb9bdfb51
jmp 0x1001721c
mov eax, dword [ebp - 0x2c]
imul esi, dword [eax], 0xf7ac6073
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [esi - 0x8539f8d]
mov eax, ecx
and eax, 0x5110f899
lea edx, [eax + esi]
add edx, 0xf7ac6073
mov eax, ecx
not eax
and eax, 0xaeef0766
add eax, edx
xor ecx, 0xaeef0766
sub eax, ecx
lea ecx, [eax - 0x5110f89a]
mov edx, ecx
and edx, 0x9893528
add edx, eax
add edx, 0xaeef0766
mov eax, ecx
not eax
and eax, 0xf676cad7
add eax, edx
xor ecx, 0xf676cad7
sub eax, ecx
lea ecx, [eax - 0x9893529]
mov edx, ecx
and edx, 0xaeef0766
add eax, eax
add eax, 0xeced95ae
sub eax, edx
or ecx, 0xaeef0766
sub eax, ecx
imul eax, eax, 0xbbed44bb
mov ecx, eax
not ecx
mov edx, eax
xor edx, 0x6cb2470d
add edx, eax
and ecx, 0x934db8f2
add ecx, edx
and eax, 0x6cb2470d
add eax, ecx
add eax, 0x934db8f4
mov dword [ebp - 0x14], eax
cmp eax, dword [ebp + 0xc]
mov ecx, 0xf52129c4
mov eax, 0xd4ecd2b6
cmove ecx, eax
mov edx, dword [0x100676f8]
mov esi, dword [0x100676fc]
mov edi, edx
and edx, esi
not esi
or edi, esi
sub esi, edi
mov edi, dword [0x100708a8]
add edx, esi
add edx, 0xa
cmp dword [0x100708a4], edx
setge dh
setl dl
lea esi, [edi - 1]
imul esi, edi
mov edi, dword [0x10067700]
mov ebx, dword [0x10067704]
mov eax, ebx
sub eax, edi
not ebx
add ebx, eax
lea eax, [edi + ebx]
add eax, 1
and esi, 1
cmp esi, eax
mov eax, dword [ebp - 0x20]
mov dword [eax], ecx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x14]
mov dword [eax], ecx
sete al
mov ecx, edx
or cl, al
add cl, dl
or dh, al
add dh, cl
and dl, al
not dl
add dl, dh
mov eax, dword [ebp - 0x10]
mov dword [eax], 0xb9bdfb51
test dl, 1
jne 0x10017840
mov edi, dword [ebp - 0x2c]
mov esi, dword [edi]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [esi + esi*2]
add eax, 0xfffffffd
lea ecx, [esi + esi]
sub ecx, eax
lea eax, [ecx + esi*2]
add eax, 0xfffffffe
imul eax, eax, 0xf7ac6073
lea ecx, [eax - 0x5110f89a]
mov edx, ecx
xor edx, 0xf676cad7
add eax, edx
add eax, 0xaeef0766
xor ecx, 0x9893528
add ecx, eax
imul eax, ecx, 0xbbed44bb
lea ecx, [eax - 0x795ff3ba]
mov edx, ecx
not edx
and edx, 0x6cb2470d
add eax, edx
add eax, 0x86a00c46
or ecx, 0x934db8f2
add eax, ecx
add eax, 0x934db8f4
cmp eax, dword [ebp + 0xc]
mov ecx, 0xf52129c4
mov edx, 0xd4ecd2b6
cmove ecx, edx
mov edx, dword [ebp - 0x20]
mov dword [edx], ecx
mov dword [edi], eax
mov eax, dword [0x10067820]
mov ecx, dword [0x10067824]
mov edx, eax
xor edx, ecx
mov esi, eax
or esi, ecx
not esi
add esi, edx
and eax, ecx
add eax, esi
add eax, 0xb9bdfb52
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x100172f5
mov edi, dword [ebp + 0xc]
mov eax, edi
and eax, 0xac8854f3
mov edx, edi
mov esi, edi
xor edx, 0xac8854f3
add edx, eax
add edx, edi
mov edi, dword [ebp - 0x28]
add edx, edi
add eax, edx
add eax, 0x5377ab0e
mov edx, edi
and edx, 0xc0f9d807
add edx, edi
mov ecx, esi
and ecx, 0x3f0627f8
add ecx, edx
mov edx, edi
or edx, 0x3f0627f8
sub ecx, edx
mov edx, edi
and edx, 0x40f9d807
add edx, edx
lea edx, [edx + esi*2]
or esi, 0xc0f9d807
sub edx, esi
add edx, 0x3f0627f9
or edx, ecx
xor edx, 0x3f0627f8
mov ecx, edx
xor ecx, dword [ebp - 0x24]
and edx, ecx
add edx, ecx
not ecx
add ecx, edx
mov edx, eax
or edx, 0xf10e5fc7
mov esi, eax
sub esi, edx
not edx
add edx, edx
sub esi, edx
mov edx, eax
not edx
xor eax, 0xef1a038
add eax, esi
or edx, 0xef1a038
add edx, eax
add ecx, edx
add ecx, 1
mov ebx, dword [ebp + 8]
mov edx, ebx
neg edx
lea eax, [ebx - 1]
or eax, edx
and eax, ecx
mov ecx, edi
and ecx, ebx
and edi, dword [ebp - 0x24]
add edi, edi
mov esi, ecx
sub esi, edi
mov edx, dword [ebp + 0xc]
add edx, edx
sub esi, edx
not ecx
lea edx, [esi + ecx*2]
mov ecx, edx
not ecx
lea esi, [eax + ebx]
add esi, 0x1faba015
add eax, ebx
lea eax, [ecx + eax*2]
add eax, 0x3f57402a
or ecx, esi
not ecx
add ecx, eax
or esi, edx
sub ecx, esi
lea edx, [ecx - 0x1faba015]
lea eax, [ecx + ecx]
add eax, 0xc0a8bfd6
sub eax, edx
add eax, 0x1ff3d617
mov ecx, eax
not ecx
and ecx, 0xd4217163
mov edx, eax
sub edx, ecx
or eax, 0x2bde8e9c
sub edx, eax
mov eax, 0x2bde8e9d
sub eax, edx
and eax, 0x1ff3d615
lea eax, [eax + edx*2]
add eax, 0xa842e2c4
lea ecx, [edx - 0x2bde8e9e]
or ecx, 0x1ff3d615
sub eax, ecx
add eax, 0xbeab887
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [0x10067430]
mov eax, dword [0x10067434]
mov esi, eax
not esi
mov edi, edx
and edi, eax
mov dword [ebp - 0x30], edi
mov ecx, edx
xor ecx, esi
mov dword [ebp - 0x1c], ecx
mov ecx, edx
or ecx, esi
mov ebx, dword [ebp - 0x1c]
add ebx, edi
sub ebx, ecx
add ebx, esi
mov ecx, ebx
and ecx, edx
mov edi, ebx
or edi, edx
sub edi, ecx
mov ecx, ebx
xor ecx, edx
not ecx
add ecx, edi
mov edi, edx
not edi
mov dword [ebp - 0x14], edi
sub ecx, edi
or ebx, edi
add ebx, ecx
mov edi, dword [ebp - 0x14]
or edi, edx
and edi, eax
mov ecx, dword [ebp - 0x14]
xor ecx, eax
not ecx
add ecx, edi
mov edi, dword [ebp - 0x14]
and edi, esi
or esi, eax
and esi, edx
or esi, edi
sub esi, dword [ebp - 0x1c]
mov edi, edx
or edi, eax
sub ecx, edi
or esi, ecx
add esi, ebx
add esi, 1
xor edx, eax
mov ecx, dword [ebp - 0x14]
and eax, ecx
add eax, edx
sub eax, edi
sub eax, ecx
lea ecx, [eax - 1]
mov edi, dword [ebp - 0x30]
or ecx, edi
lea edx, [edi + ecx]
not ecx
add ecx, edx
neg eax
or eax, edi
sub ecx, eax
mov eax, esi
and eax, 0xbe8cd354
mov edx, esi
or edx, 0x41732cab
sub eax, edx
not edx
lea edx, [edx + edx*2]
sub eax, edx
mov edx, esi
not edx
xor esi, 0x3e8cd354
lea eax, [eax + esi*2]
mov esi, ecx
neg esi
or edx, 0xbe8cd354
add edx, eax
add edx, 0xbe8cd355
lea eax, [ecx - 1]
and eax, edx
not edx
and edx, esi
sub eax, edx
add ecx, ecx
sub eax, ecx
mov ecx, eax
not ecx
lea edx, [ecx + ecx]
lea edx, [edx + eax*2]
or ecx, 0x41732cab
sub edx, ecx
and eax, 0x41732cab
lea ecx, [edx + eax]
add eax, edx
add eax, 0x3d26170d
mov edx, eax
xor edx, 0xd4ecd2b6
add ecx, edx
add ecx, 0x3d26170d
xor eax, 0x2b132d49
add eax, ecx
imul eax, eax, 0xf4ef8093
lea ecx, [eax - 0x6f4a969e]
mov edx, ecx
not edx
and edx, 0xdf655f0a
add eax, edx
add eax, 0x90b56962
or ecx, 0x209aa0f5
add ecx, eax
imul eax, ecx, 0x17319d9b
lea ecx, [eax - 0x6d620f73]
mov edx, ecx
and edx, 0x6a3d7ae4
add edx, eax
add edx, 0x929df08d
mov eax, ecx
not eax
and eax, 0x95c2851b
add eax, edx
xor ecx, 0x95c2851b
sub eax, ecx
lea ecx, [eax - 0x6a3d7ae5]
mov edx, ecx
and edx, 0x7b6c52f1
add edx, eax
add edx, 0x95c2851b
mov eax, ecx
not eax
and eax, 0x8493ad0e
add eax, edx
xor ecx, 0x8493ad0e
sub eax, ecx
lea ecx, [eax - 0x7b6c52f2]
mov edx, ecx
and edx, 0x95c2851b
add eax, eax
add eax, 0x9275a1c
sub eax, edx
or ecx, 0x95c2851b
sub eax, ecx
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov eax, dword [0x10067718]
mov ecx, dword [0x1006771c]
mov edx, eax
xor edx, ecx
mov esi, eax
or esi, ecx
not esi
add esi, edx
and eax, ecx
add eax, esi
add eax, 0xb9bdfb52
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov ecx, dword [0x10067720]
mov edx, dword [0x10067724]
mov eax, ecx
or eax, edx
not eax
add eax, ecx
not edx
or edx, ecx
sub eax, edx
mov ecx, dword [0x100708a0]
add eax, 0xa
cmp dword [0x1007089c], eax
setl al
lea edx, [ecx - 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
je 0x10017899
nop word cs:[eax + eax]
mov edx, dword [0x10070898]
mov eax, dword [0x10067788]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10070894], eax
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [str.g.HE]
mov esi, dword [0x10067794]
mov edi, edx
or edi, esi
mov ebx, edi
not ebx
lea edi, [edi + ebx*2]
mov ebx, edx
xor ebx, esi
not ebx
sub ebx, edi
and edx, esi
not edx
add edx, ebx
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
je 0x10017840
jmp 0x10015d00
mov edx, dword [ebp - 0x28]
mov eax, edx
and eax, 0x5377ab0c
mov esi, dword [ebp + 0xc]
add eax, esi
mov ecx, edx
mov edi, edx
or ecx, 0xac8854f3
sub eax, ecx
lea ecx, [eax + 0x5910a9e6]
mov edx, ecx
not edx
and edx, 0x2c8854f3
add edx, edx
lea eax, [edx + eax*2]
add eax, 0xb22153cc
xor ecx, 0xac8854f3
sub eax, ecx
mov dword [ebp - 0x14], eax
mov ecx, edi
and ecx, 0xc0f9d807
mov edx, esi
and edx, 0x3f0627f8
or edx, ecx
mov eax, edx
xor eax, 0x3f0627f8
mov esi, dword [ebp - 0x24]
lea edi, [esi + esi*2]
mov ecx, dword [ebp + 8]
add edi, ecx
sub edi, esi
lea ecx, [edi + 1]
xor edx, 0xc0f9d807
mov ebx, edx
and ebx, ecx
add ebx, ebx
mov esi, eax
xor esi, ecx
sub esi, ebx
or ecx, eax
add ecx, esi
mov esi, 0xfffffffe
sub esi, edi
or esi, eax
sub ecx, esi
add ecx, edx
mov edi, ecx
not edi
mov esi, ecx
or esi, edi
and esi, eax
mov ebx, ecx
or ebx, eax
not ebx
add ebx, esi
sub ebx, edx
or ecx, edx
add ecx, ebx
or edi, eax
sub ecx, edi
mov esi, dword [ebp - 0x14]
add esi, 0x97fdb5e1
mov eax, esi
and eax, ecx
xor esi, ecx
add esi, eax
add esi, ecx
not ecx
add ecx, esi
lea edx, [ecx + eax]
add ecx, eax
add ecx, 0xef1a03a
mov ebx, dword [ebp + 8]
mov eax, ebx
neg eax
lea edx, [ebx + edx*2]
add edx, 0x1de34074
or eax, ecx
not eax
add eax, edx
lea edx, [ebx - 1]
or edx, ecx
sub eax, edx
mov edx, dword [ebp - 0x28]
mov ecx, edx
and ecx, ebx
mov esi, edx
mov edi, edx
or esi, ebx
mov edx, ecx
sub edx, esi
not esi
add esi, esi
sub edx, esi
mov esi, edi
xor esi, ebx
not esi
add esi, edx
not ecx
add ecx, esi
mov edx, eax
and edx, 0xe0545fea
add edx, eax
mov esi, eax
not esi
mov edi, esi
and edi, 0x1faba015
add edi, edx
and esi, 0xe0545fea
add esi, edi
and eax, 0x1faba015
add eax, esi
add eax, 0x1faba016
mov edx, ecx
not edx
or ecx, edx
and ecx, eax
add ecx, edx
mov eax, ecx
or eax, 0xe0545fea
mov edx, ecx
sub edx, eax
and ecx, 0x1faba015
lea eax, [edx + ecx]
add eax, 0xe09c95ec
mov ecx, eax
and ecx, 0x2bde8e9c
add ecx, ecx
mov edx, eax
sub edx, ecx
not eax
add eax, eax
sub edx, eax
or eax, 0x57bd1d38
add eax, edx
add eax, 0xe00c29ea
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ebx, dword [0x10067430]
mov edi, dword [0x10067434]
mov ecx, edi
not ecx
mov dword [ebp - 0x1c], ecx
mov edx, ebx
xor edx, ecx
mov eax, ebx
and eax, edi
mov dword [ebp - 0x14], eax
add edx, eax
mov esi, ebx
or esi, ecx
mov ecx, esi
mov esi, ebx
not esi
mov dword [ebp - 0x30], esi
and esi, edi
mov dword [ebp - 0x3c], esi
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x38], ebx
sub eax, ebx
add eax, esi
add eax, ecx
mov dword [ebp - 0x14], eax
mov eax, ecx
not eax
add eax, edx
mov edx, edi
sub eax, edi
mov esi, eax
and esi, ebx
mov dword [ebp - 0x40], esi
mov ecx, eax
or ecx, ebx
lea edi, [esi + ecx]
not ecx
add ecx, edi
mov esi, dword [ebp - 0x30]
add ecx, esi
or eax, esi
sub ecx, eax
mov eax, esi
mov ebx, dword [ebp - 0x1c]
and eax, ebx
mov edi, dword [ebp - 0x3c]
lea eax, [edi + eax*2]
add eax, edx
mov edi, esi
xor edi, edx
sub eax, edi
mov edi, esi
or edi, edx
not edi
add edi, eax
lea eax, [edx + ebx*2]
add eax, 1
mov ebx, dword [ebp - 0x38]
mov esi, ebx
and esi, eax
lea esi, [esi + esi*2]
xor eax, ebx
add eax, esi
mov esi, ebx
xor esi, edx
mov ebx, dword [ebp - 0x1c]
lea ebx, [edx + ebx*2]
sub eax, ebx
mov ebx, dword [ebp - 0x30]
add eax, ebx
sub dword [ebp - 0x14], ebx
or ebx, dword [ebp - 0x1c]
sub edi, ebx
mov ebx, eax
not ebx
mov edx, edi
and edx, ebx
mov dword [ebp - 0x1c], edx
mov edx, edi
or edx, eax
sub edx, dword [ebp - 0x1c]
xor eax, edi
add eax, edx
or ebx, edi
lea edx, [eax + ebx]
add eax, ebx
add eax, 1
mov ebx, dword [ebp - 0x40]
lea edi, [ecx + ebx]
add ecx, ebx
add ecx, 0xd2769604
mov ebx, eax
not ebx
and ebx, ecx
add edi, ebx
add edi, 0xd2769604
add edi, eax
or eax, ecx
sub edi, eax
lea eax, [edi + edx]
add eax, 1
mov ecx, eax
and ecx, 0x52769603
add ecx, ecx
mov edx, eax
sub edx, ecx
mov ecx, eax
or ecx, 0xd2769603
add ecx, edx
mov edx, eax
xor edx, 0x2d8969fc
add edx, ecx
or eax, 0x2d8969fc
lea ecx, [edx + eax]
add eax, edx
add eax, 2
mov edi, dword [ebp - 0x14]
or esi, edi
add esi, edi
not edi
add edi, esi
mov edx, edi
mov ebx, edi
not edx
mov esi, eax
and esi, 0x41732cab
add ecx, esi
add ecx, 2
not eax
and eax, 0x41732cab
lea esi, [ecx + eax]
add eax, ecx
add eax, 0x7d19a6aa
mov ecx, eax
not ecx
mov edi, ecx
and edi, edx
add esi, edi
add esi, 0x7d19a6aa
sub esi, ebx
xor eax, edx
not eax
add eax, esi
or ecx, edx
sub eax, ecx
lea ecx, [eax + 0x278ed76d]
mov edx, ecx
not edx
mov esi, edx
and esi, 0x8493ad0e
add eax, esi
add eax, 0x278ed76d
or ecx, 0x8493ad0e
sub eax, ecx
sub eax, edx
lea ecx, [eax - 0x7b6c52f3]
mov edx, 0x7b6c52f2
sub edx, eax
and edx, 0x6a3d7ae4
lea eax, [edx + eax*2]
add eax, 0x9275a1a
or ecx, 0x6a3d7ae4
sub eax, ecx
add eax, 0x6a3d7ae5
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov eax, dword [0x10067828]
mov edx, dword [0x1006782c]
mov ecx, eax
and ecx, edx
mov esi, eax
or esi, edx
lea edi, [ecx + esi]
not esi
lea esi, [esi + esi*2]
add esi, edi
xor eax, edx
not eax
add eax, eax
sub eax, esi
not ecx
add eax, ecx
add eax, 0xb9bdfb51
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
jmp 0x100174e4
mov esi, dword [0x10070890]
mov eax, dword [0x10067740]
mov ecx, dword [0x10067744]
mov edx, ecx
sub edx, eax
not ecx
add ecx, edx
add eax, ecx
add eax, 0xb
cmp dword [0x1007088c], eax
setl byte [ebp - 0x14]
setge byte [ebp - 0x10]
lea edx, [esi - 1]
imul edx, esi
mov ecx, dword [0x10067748]
mov edi, dword [0x1006774c]
mov ebx, ecx
not ebx
mov esi, ebx
and esi, edi
add esi, esi
mov eax, ecx
or eax, edi
sub eax, esi
not edi
or edi, ecx
sub eax, edi
add eax, ebx
and edx, 1
cmp edx, eax
setne al
sete dl
mov ch, byte [ebp - 0x10]
mov cl, ch
and cl, dl
mov dh, byte [ebp - 0x14]
mov ah, dh
or ah, dl
add cl, ah
not ah
add ah, cl
add ah, al
mov cl, dh
or cl, al
add cl, ah
mov al, ch
or al, dl
add al, cl
test al, 1
je 0x10017c20
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8