Function at 0x437610
Capabilities:
Encode data using xor

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0x78
push 0xfffffffffffffffe
push 0x481988
push 0x408890
mov eax, dword fs:[0]
push eax
sub esp, 0x4c
push ebx
push esi
push edi
mov eax, dword [0x486534]
xor dword [ebp - 8], eax
xor eax, ebp
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
xor esi, esi
mov dword [ebp + 0x74], esi
xor eax, eax
nop
mov ecx, eax
not ecx
xor esi, ecx
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 0x2f
jl 0x437650
cmp esi, 0xffff0001
jge 0x43766f
lea esi, [esi + esi*2]
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x437699
mov esi, 0xb
mov dword [ebp + 0x74], esi
mov dword [ebp - 4], 0
xor ecx, ecx
mov dword [ebp - 0x30], ecx
cmp ecx, 0x28
jge 0x4376ee
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x4376bd
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x4376e6
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x4376e9
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x4376a2
mov dword [ebp - 4], 0xfffffffe
call fcn.00437752
mov dword [ebp - 4], 1
xor ecx, ecx
mov dword [ebp + 0x68], ecx
cmp ecx, 0xc
jge 0x43775c
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x43771e
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x437747
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x43774a
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437703
mov dword [ebp - 4], 0xfffffffe
call fcn.00437808
xor eax, eax
lea ebx, [ebx]
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 0x3a
jl 0x437770
test esi, esi
jge 0x437790
mov ecx, esi
neg ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
mov esi, ecx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x4377b5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
mov dword [ebp - 4], 2
mov edi, 7
mov dword [ebp + 0x10], edi
xor ecx, ecx
mov dword [ebp + 0x60], ecx
cmp ecx, 0x11
jge 0x43784a
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x4377f6
sub edi, 1
mov dword [ebp + 0x10], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x4377c6
mov dword [ebp - 4], 0xfffffffe
xor ecx, ecx
xor esi, ecx
mov dword [ebp + 0x74], esi
jge 0x43785f
neg esi
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x437886
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
cmp ecx, 0xb
jl 0x437853
mov dword [ebp - 4], 3
mov edi, 7
mov dword [ebp - 0x48], edi
xor ecx, ecx
mov dword [ebp + 0x58], ecx
cmp ecx, 0xf
jge 0x437916
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x4378cf
sub edi, 1
mov dword [ebp - 0x48], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x43789f
mov dword [ebp - 4], 0xfffffffe
mov dword [ebp - 4], 4
mov edi, 7
mov dword [ebp + 8], edi
xor ecx, ecx
mov dword [ebp + 0x50], ecx
cmp ecx, 3
jge 0x4379a5
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x43795e
sub edi, 1
mov dword [ebp + 8], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x43792e
mov dword [ebp - 4], 0xfffffffe
xor edi, edi
mov edi, edi
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea edx, [edx + edx*2]
mov eax, edi
sub eax, edx
cmp eax, 1
jne 0x4379c9
and esi, edi
jmp 0x4379df
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 6
jl 0x4379b0
xor ecx, ecx
lea esp, [esp]
xor esi, ecx
mov dword [ebp + 0x74], esi
jge 0x4379fc
neg esi
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x437a23
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
cmp ecx, 2
jl 0x4379f0
mov dword [ebp - 4], 5
xor ecx, ecx
mov dword [ebp - 0x38], ecx
cmp ecx, 0x10
jge 0x437a80
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x437a4f
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x437a78
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x437a7b
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437a34
mov dword [ebp - 4], 0xfffffffe
call fcn.00437adf
mov dword [ebp - 4], 6
mov edi, 7
mov dword [ebp + 0x48], edi
xor ecx, ecx
mov dword [ebp], ecx
cmp ecx, 8
jge 0x437b21
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x437acd
sub edi, 1
mov dword [ebp + 0x48], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437a9d
mov dword [ebp - 4], 0xfffffffe
xor edi, edi
lea ebx, [ebx]
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea edx, [edx + edx*2]
mov eax, edi
sub eax, edx
cmp eax, 1
jne 0x437b49
and esi, edi
jmp 0x437b5f
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 2
jl 0x437b30
mov edi, 7
mov dword [ebp - 4], edi
mov dword [ebp + 0x40], edi
xor ecx, ecx
mov dword [ebp - 0x58], ecx
test ecx, ecx
jge 0x437bed
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x437ba6
sub edi, 1
mov dword [ebp + 0x40], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437b77
mov dword [ebp - 4], 0xfffffffe
mov dword [ebp - 4], 8
xor ecx, ecx
mov dword [ebp + 0x38], ecx
cmp ecx, 1
jge 0x437c49
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x437c18
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x437c41
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x437c44
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437bfd
mov dword [ebp - 4], 0xfffffffe
call fcn.00437ca8
mov dword [ebp - 4], 9
mov edi, 7
mov dword [ebp - 0x20], edi
xor ecx, ecx
mov dword [ebp + 0x30], ecx
cmp ecx, 7
jge 0x437cea
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x437c96
sub edi, 1
mov dword [ebp - 0x20], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437c66
mov dword [ebp - 4], 0xfffffffe
test esi, esi
jge 0x437d04
mov edx, esi
neg edx
add edx, edx
add edx, edx
sub edx, esi
mov esi, edx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x437d29
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
xor eax, eax
jmp 0x437d30
mov edx, eax
not edx
xor esi, edx
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 6
jl 0x437d30
cmp esi, 0xffff0001
jge 0x437d4f
lea esi, [esi + esi*2]
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov edx, esi
sub edx, ecx
jne 0x437d79
mov esi, 0xb
mov dword [ebp + 0x74], esi
xor eax, eax
jmp 0x437d80
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 6
jl 0x437d80
test esi, esi
jge 0x437da0
mov eax, esi
neg eax
add eax, eax
add eax, eax
sub eax, esi
mov esi, eax
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
imul ecx, ecx, 0xd
mov edx, esi
sub edx, ecx
jne 0x437dc5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
xor eax, eax
mov ecx, eax
not ecx
xor esi, ecx
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 3
jl 0x437dc7
cmp esi, 0xffff0001
jge 0x437de6
lea esi, [esi + esi*2]
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x437e10
mov esi, 0xb
mov dword [ebp + 0x74], esi
mov dword [ebp - 4], 0xa
mov edi, 7
mov dword [ebp - 0x40], edi
xor ecx, ecx
mov dword [ebp + 0x28], ecx
cmp ecx, 2
jge 0x437e98
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x437e51
sub edi, 1
mov dword [ebp - 0x40], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437e21
mov dword [ebp - 4], 0xfffffffe
mov dword [ebp - 4], 0xb
mov edi, 7
mov dword [ebp - 0x28], edi
xor ecx, ecx
mov dword [ebp + 0x20], ecx
cmp ecx, 4
jge 0x437f27
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x437ee0
sub edi, 1
mov dword [ebp - 0x28], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437eb0
mov dword [ebp - 4], 0xfffffffe
xor eax, eax
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 2
jl 0x437f30
test esi, esi
jge 0x437f50
mov edx, esi
neg edx
add edx, edx
add edx, edx
sub edx, esi
mov esi, edx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x437f75
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
mov dword [ebp - 4], 0xc
mov edi, 7
mov dword [ebp - 0x50], edi
xor ecx, ecx
mov dword [ebp + 0x18], ecx
cmp ecx, 3
jge 0x437ffd
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x437fb6
sub edi, 1
mov dword [ebp - 0x50], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x437f86
mov dword [ebp - 4], 0xfffffffe
xor edi, edi
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea edx, [edx + edx*2]
mov eax, edi
sub eax, edx
cmp eax, 1
jne 0x43801f
and esi, edi
jmp 0x438035
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 4
jl 0x438006
xor ecx, ecx
xor esi, ecx
mov dword [ebp + 0x74], esi
jge 0x43804e
neg esi
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438075
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
cmp ecx, 2
jl 0x438042
xor eax, eax
nop
mov ecx, eax
imul esi, ecx
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 2
jl 0x438080
test esi, esi
jle 0x43809a
lea esi, [esi + esi*4]
mov dword [ebp + 0x74], esi
mov eax, 0x55555556
imul esi
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*2]
mov eax, esi
sub eax, edx
jne 0x4380b9
mov esi, 0x11
mov dword [ebp + 0x74], esi
nop
nop
nop
xor eax, eax
mov edi, edi
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 2
jl 0x4380c0
test esi, esi
jge 0x4380e0
mov ecx, esi
neg ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
mov esi, ecx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x438105
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
mov dword [ebp - 4], 0xd
xor ecx, ecx
mov dword [ebp + 0x70], ecx
cmp ecx, 2
jge 0x43815a
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x438129
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x438152
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438155
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x43810e
mov dword [ebp - 4], 0xfffffffe
call fcn.0043818c
xor edi, edi
jmp 0x438170
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea ecx, [edx + edx*2]
mov edx, edi
sub edx, ecx
cmp edx, 1
jne 0x438196
and esi, edi
jmp 0x4381ac
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 3
jl 0x438170
xor eax, eax
lea esp, [esp]
mov ecx, eax
not ecx
xor esi, ecx
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 4
jl 0x4381c0
cmp esi, 0xffff0001
jge 0x4381df
lea esi, [esi + esi*2]
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
sub esi, edx
jne 0x438206
mov dword [ebp + 0x74], 0xb
xor ecx, ecx
mov dword [ebp + 0x74], ecx
jge 0x43821c
mov eax, ecx
neg eax
add eax, eax
add eax, eax
sub eax, ecx
mov ecx, eax
mov dword [ebp + 0x74], ecx
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov edx, ecx
sub edx, eax
jne 0x438241
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov dword [ebp + 0x74], ecx
mov dword [ebp - 4], 0xe
xor esi, esi
mov dword [ebp + 0x6c], esi
cmp esi, 1
jge 0x438296
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x438265
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x43828e
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x438291
xor ecx, ecx
mov dword [ebp + 0x74], ecx
add esi, 1
jmp 0x43824a
mov dword [ebp - 4], 0xfffffffe
call fcn.0043830b
mov dword [ebp + 0x74], 0
mov ecx, 0x11
mov dword [ebp + 0x74], ecx
nop
nop
nop
mov dword [ebp - 4], 0xf
xor esi, esi
mov dword [ebp + 0x64], esi
test esi, esi
jge 0x438315
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x4382d7
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x438300
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x438303
xor ecx, ecx
mov dword [ebp + 0x74], ecx
add esi, 1
jmp 0x4382bd
mov dword [ebp - 4], 0xfffffffe
call fcn.00438435
xor ecx, ecx
mov dword [ebp + 0x74], ecx
jge 0x438337
mov edx, ecx
neg edx
add edx, edx
add edx, edx
sub edx, ecx
mov ecx, edx
mov dword [ebp + 0x74], ecx
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov edx, ecx
sub edx, eax
jne 0x43835c
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov dword [ebp + 0x74], ecx
xor eax, eax
mov edi, edi
and ecx, eax
mov dword [ebp + 0x74], ecx
add eax, 1
cmp eax, 4
jl 0x438360
test ecx, ecx
jge 0x438380
mov eax, ecx
neg eax
add eax, eax
add eax, eax
sub eax, ecx
mov ecx, eax
mov dword [ebp + 0x74], ecx
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov edx, ecx
sub edx, eax
jne 0x4383a5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov dword [ebp + 0x74], ecx
cmp ecx, 0xffff0001
jge 0x4383b3
lea ecx, [ecx + ecx*2]
mov dword [ebp + 0x74], ecx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x4383dd
mov ecx, 0xb
mov dword [ebp + 0x74], ecx
mov dword [ebp - 4], 0x10
xor esi, esi
mov dword [ebp + 0x5c], esi
cmp esi, 1
jge 0x43843f
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x438401
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x43842a
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x43842d
xor ecx, ecx
mov dword [ebp + 0x74], ecx
add esi, 1
jmp 0x4383e6
mov dword [ebp - 4], 0xfffffffe
call fcn.0043851f
xor esi, esi
lea ecx, [ecx]
xor ecx, esi
mov dword [ebp + 0x74], ecx
jge 0x43845c
neg ecx
mov dword [ebp + 0x74], ecx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x438483
xor ecx, ecx
mov dword [ebp + 0x74], ecx
add esi, 1
cmp esi, 2
jl 0x438450
xor eax, eax
lea ecx, [ecx]
mov edx, eax
imul ecx, edx
mov dword [ebp + 0x74], ecx
add eax, 1
cmp eax, 4
jl 0x438490
test ecx, ecx
jle 0x4384aa
lea ecx, [ecx + ecx*4]
mov dword [ebp + 0x74], ecx
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
mov edx, ecx
sub edx, eax
jne 0x4384c9
mov ecx, 0x11
mov dword [ebp + 0x74], ecx
nop
nop
nop
mov dword [ebp - 4], 0x11
mov edi, 7
mov dword [ebp + 0x54], edi
xor esi, esi
mov dword [ebp + 0x4c], esi
cmp esi, 2
jge 0x438560
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x43850d
sub edi, 1
mov dword [ebp + 0x54], edi
mov eax, ecx
cdq
idiv edi
mov ecx, eax
mov dword [ebp + 0x74], ecx
add esi, 1
jmp 0x4384dd
mov dword [ebp - 4], 0xfffffffe
xor esi, esi
mov dword [ebp + 0x74], esi
jge 0x43857d
mov ecx, esi
neg ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
mov esi, ecx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x4385a2
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
mov dword [ebp - 4], 0x12
mov edi, 7
mov dword [ebp + 0x44], edi
xor ecx, ecx
mov dword [ebp + 0x3c], ecx
cmp ecx, 3
jge 0x43862a
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x4385e3
sub edi, 1
mov dword [ebp + 0x44], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x4385b3
mov dword [ebp - 4], 0xfffffffe
mov dword [ebp - 4], 0x13
xor ecx, ecx
mov dword [ebp + 0x34], ecx
cmp ecx, 4
jge 0x438686
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x438655
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x43867e
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438681
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x43863a
mov dword [ebp - 4], 0xfffffffe
call fcn.004386ea
mov dword [ebp - 4], 0x14
xor ecx, ecx
mov dword [ebp + 0x2c], ecx
cmp ecx, 2
jge 0x4386f4
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x4386b6
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x4386df
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x4386e2
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x43869b
mov dword [ebp - 4], 0xfffffffe
call fcn.00438796
xor eax, eax
mov ecx, eax
imul esi, ecx
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 4
jl 0x438702
test esi, esi
jle 0x43871c
lea esi, [esi + esi*4]
mov dword [ebp + 0x74], esi
mov eax, 0x55555556
imul esi
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*2]
mov eax, esi
sub eax, edx
jne 0x43873b
mov esi, 0x11
mov dword [ebp + 0x74], esi
nop
nop
nop
mov dword [ebp - 4], 0x15
xor ecx, ecx
mov dword [ebp + 0x24], ecx
cmp ecx, 1
jge 0x4387a0
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x438762
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x43878b
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x43878e
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x438747
mov dword [ebp - 4], 0xfffffffe
call fcn.0043885c
xor eax, eax
mov edi, edi
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 2
jl 0x4387b0
test esi, esi
jge 0x4387d0
mov ecx, esi
neg ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
mov esi, ecx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x4387f5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
xor eax, eax
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 2
jl 0x4387f7
test esi, esi
jge 0x438817
mov edx, esi
neg edx
add edx, edx
add edx, edx
sub edx, esi
mov esi, edx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x43883c
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
xor edi, edi
mov edi, edi
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea edx, [edx + edx*2]
mov eax, edi
sub eax, edx
cmp eax, 1
jne 0x438866
and esi, edi
jmp 0x43887c
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 3
jl 0x438840
xor eax, eax
lea esp, [esp]
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 2
jl 0x438890
test esi, esi
jge 0x4388b0
mov ecx, esi
neg ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
mov esi, ecx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x4388d5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
xor edi, edi
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea edx, [edx + edx*2]
mov eax, edi
sub eax, edx
cmp eax, 1
jne 0x4388f0
and esi, edi
jmp 0x438906
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 3
jl 0x4388d7
test esi, esi
jge 0x438924
mov ecx, esi
neg ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
mov esi, ecx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x438949
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
mov dword [ebp - 4], 0x16
xor ecx, ecx
mov dword [ebp + 0x1c], ecx
cmp ecx, 3
jge 0x43899e
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x43896d
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x438996
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438999
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x438952
mov dword [ebp - 4], 0xfffffffe
call fcn.00438a02
mov dword [ebp - 4], 0x17
xor ecx, ecx
mov dword [ebp + 0x14], ecx
cmp ecx, 3
jge 0x438a0c
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x4389ce
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x4389f7
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x4389fa
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x4389b3
mov dword [ebp - 4], 0xfffffffe
call fcn.00438a70
mov dword [ebp - 4], 0x18
xor ecx, ecx
mov dword [ebp + 0xc], ecx
cmp ecx, 3
jge 0x438a7a
mov eax, esi
cdq
sub eax, edx
sar eax, 1
and eax, 0x80000001
jns 0x438a3c
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
je 0x438a65
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438a68
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x438a21
mov dword [ebp - 4], 0xfffffffe
call fcn.00438aac
xor edi, edi
jmp 0x438a90
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea ecx, [edx + edx*2]
mov edx, edi
sub edx, ecx
cmp edx, 1
jne 0x438ab6
and esi, edi
jmp 0x438acc
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 2
jl 0x438a90
mov dword [ebp - 4], 0x19
mov edi, 7
mov dword [ebp + 4], edi
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, 4
jge 0x438b5f
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x438b18
sub edi, 1
mov dword [ebp + 4], edi
mov eax, esi
cdq
idiv edi
mov esi, eax
mov dword [ebp + 0x74], esi
add ecx, 1
jmp 0x438ae8
mov dword [ebp - 4], 0xfffffffe
not esi
mov dword [ebp + 0x74], esi
cmp esi, 0xffff0001
jge 0x438b79
lea esi, [esi + esi*2]
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438ba3
mov esi, 0xb
mov dword [ebp + 0x74], esi
xor eax, eax
and esi, eax
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 2
jl 0x438ba5
test esi, esi
jge 0x438bc5
mov ecx, esi
neg ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
mov esi, ecx
mov dword [ebp + 0x74], esi
mov eax, 0x4ec4ec4f
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xd
mov ecx, esi
sub ecx, eax
jne 0x438bea
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
mov dword [ebp + 0x74], esi
xor ecx, ecx
lea esp, [esp]
xor esi, ecx
mov dword [ebp + 0x74], esi
jge 0x438bfc
neg esi
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438c23
xor esi, esi
mov dword [ebp + 0x74], esi
add ecx, 1
cmp ecx, 3
jl 0x438bf0
xor eax, eax
lea ecx, [ecx]
mov ecx, eax
not ecx
xor esi, ecx
mov dword [ebp + 0x74], esi
add eax, 1
cmp eax, 3
jl 0x438c30
cmp esi, 0xffff0001
jge 0x438c4f
lea esi, [esi + esi*2]
mov dword [ebp + 0x74], esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, esi
sub eax, edx
jne 0x438c79
mov esi, 0xb
mov dword [ebp + 0x74], esi
xor edi, edi
jmp 0x438c80
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
lea ecx, [edx + edx*2]
mov edx, edi
sub edx, ecx
cmp edx, 1
jne 0x438c99
and esi, edi
jmp 0x438caf
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, 4
or esi, edi
mov dword [ebp + 0x74], esi
add edi, 1
cmp edi, 2
jl 0x438c80
mov dword [ebp - 4], 0x1a
mov edi, 7
mov dword [ebp - 0x24], edi
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
cmp ecx, 3
jge 0x438d42
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, ecx
sub eax, edx
jne 0x438cfb
mov dword [ebp - 4], 0xfffffffe
mov dword [ebp - 4], 0x1b
mov edi, 7
mov dword [ebp - 0x34], edi
xor ecx, ecx
mov dword [ebp - 0x3c], ecx
test ecx, ecx
jge 0x438dd0