Function at 0x42d8b0
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x4d5ef3
call fcn.004d5930
sub esp, 0x22c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x20], 0x477e
cmp dword [ebp - 0x20], 0x481c
jle 0x42d941
xor esi, esi
xor ebx, ebx
mov dword [ebp - 0x24], 0x7c9d
xor edi, edi
mov eax, ebx
and eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0xd0]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42d905
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0xd0]
call fcn.00402fe4
inc edi
cmp edi, 0x7da4
jl 0x42d8e9
add ebx, esi
dec dword [ebp - 0x24]
jne 0x42d8e7
inc esi
cmp esi, 0xfff
jl 0x42d8de
push 0
push 0x16ad
call dword [0xad41b8]
mov dword [ebp - 0x1c], 0x3564
cmp dword [ebp - 0x1c], 0x37fd
jle 0x42d9a1
xor esi, esi
xor edi, edi
mov eax, edi
and eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x160]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42d971
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x160]
call fcn.00402fe4
inc edi
cmp edi, 0x6737
jl 0x42d955
inc esi
cmp esi, 0xc2
jl 0x42d953
push 0
call dword [0xad41c0]
mov dword [ebp - 0x28], 0x100d
mov dword [ebp - 0x18], 0x6e6d
cmp dword [ebp - 0x18], 0x7136
jle 0x42da1b
xor esi, esi
mov dword [ebp - 0x24], esi
xor edi, edi
xor ebx, ebx
mov dword [ebp - 0x14], esi
mov ecx, edi
sar esi, cl
mov eax, ebx
or eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0xa0]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42d9e4
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0xa0]
call fcn.00402fe4
inc ebx
cmp ebx, 0x12fe
jl 0x42d9c8
inc edi
cmp edi, 0x353d
mov esi, dword [ebp - 0x24]
jl 0x42d9bf
inc esi
mov dword [ebp - 0x24], esi
cmp esi, 0x3fa3
jl 0x42d9bd
and dword [ebp - 4], 0
cmp dword [ebp - 0x20], 0x440b
jge 0x42da33
push 0xacbe80
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 2
cmp dword [ebp - 0x1c], 0x32d6
jge 0x42da52
push 0xacbedc
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x14], 0x873
cmp dword [ebp - 0x14], 0xb2c
jle 0x42daae
xor esi, esi
xor edi, edi
mov eax, edi
and eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x220]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42da86
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x220]
call fcn.00402fe4
inc edi
cmp edi, 0x654b
jl 0x42da6a
inc esi
cmp esi, 0x10fe
jl 0x42da68
cmp dword [ebp - 0x28], 0x18a6
jle 0x42dc1c
mov dword [ebp - 0x24], 0x2fe0
cmp dword [ebp - 0x24], 0x30d5
jle 0x42db3a
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x20], esi
xor edi, edi
mov dword [ebp - 0x1c], edi
mov eax, esi
cdq
idiv edi
mov esi, edx
mov edi, 0x6ee5
mov eax, esi
and eax, ebx
cdq
push edx
push eax
lea ecx, [ebp - 0x58]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42dafc
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x58]
call fcn.00402fe4
dec esi
dec edi
jne 0x42dae3
mov edi, dword [ebp - 0x1c]
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x3880
mov esi, dword [ebp - 0x20]
jl 0x42dad7
inc esi
mov dword [ebp - 0x20], esi
cmp esi, 0x4ca8
jl 0x42dad2
inc ebx
cmp ebx, 0x5c61
jl 0x42dacd
xchg edi, eax
fidivr word [esi + 0x41]
pop eax
mov dword [ebp - 4], 6
cmp dword [ebp - 0x18], 0x6c81
jge 0x42dc37
push 0xacbf18
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], 0x5286
cmp dword [ebp - 0x18], 0x548f
jle 0x42dc8e
xor esi, esi
mov edi, esi
mov ebx, 0x2b27
mov eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x190]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42dc6e
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x190]
call fcn.00402fe4
dec edi
dec ebx
jne 0x42dc54
inc esi
cmp esi, 0x65
jl 0x42dc4d
mov dword [ebp - 4], 8
cmp dword [ebp - 0x14], 0x5ae
jge 0x42dca9
push 0xacbfd0
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x28], 0x308
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x18], 0x51d5
jge 0x42dccf
push 0xacc0c0
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x28], 0x1be7
jle 0x42de45
mov dword [ebp - 0x14], 0x823
cmp dword [ebp - 0x14], 0xb2b
jle 0x42dd37
xor esi, esi
xor edi, edi
lea eax, [edi + esi]
cdq
push edx
push eax
lea ecx, [ebp - 0x100]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42dd0f
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x100]
call fcn.00402fe4
inc edi
cmp edi, 0x75a3
jl 0x42dcf4
inc esi
cmp esi, 0x4868
jl 0x42dcf2
mov dword [ebp - 0x18], 0x2e31
cmp dword [ebp - 0x18], 0x2ead
jle 0x42dd8f
xor esi, esi
xor edi, edi
mov eax, edi
xor eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040502d
pop ecx
call [ecx + 0x59]
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42dd67
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x1f0]
call fcn.00402fe4
inc edi
cmp edi, 0x4077
jl 0x42dd4b
inc esi
cmp esi, 0xd95
jl 0x42dd49
mov edx, 0x73edc7e4
retf 0xd160
in al, 0xc7
in eax, dx
jae 0x42dd5e
pushal
sar dword [ebx + 0x6a], 1
test dword [edx], esp
popfd
inc edx
jne 0x42dd95
aam 0x2e
or byte [ecx], dl
dec byte [eax - 0x80]
pop edi
mov dword [ebx - 0x6dcc9a06], eax
salc
pop es
rcl cl, cl
dec edx
cld
pop edx
fdiv dword gs:[ecx + ecx*4 + 0x2b]
daa
lahf
dec ebp
salc
aam 0x59
push 0x35324772
insd dword es:[edi], dx
mov dword [edx - 0x9f67f7c], eax
test al, 0xe3
dec ebp
pop ebx
pop ss
dec edx
sub al, 0x25
jge 0x42dd5c
mov byte [0x932bc504], al
out 0x31, al
mov esp, 0xe9b81aeb
jnp 0x42dd8e
invalid
mov dword [ebp - 0x14], 0x697d
cmp dword [ebp - 0x14], 0x6bf8
jle 0x42dea0
xor esi, esi
xor edi, edi
mov eax, esi
cdq
idiv edi
mov eax, edx
cdq
push edx
push eax
lea ecx, [ebp - 0x130]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42de78
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x130]
call fcn.00402fe4
inc edi
cmp edi, 0x1095
jl 0x42de59
inc esi
cmp esi, 0x385b
jl 0x42de57
mov dword [ebp - 0x1c], 0x4e35
cmp dword [ebp - 0x1c], 0x4eb4
jle 0x42dee3
xor esi, esi
xor edi, edi
xor ebx, ebx
lea eax, [ebx + edi]
and eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc ebx
cmp ebx, 0x7482
jl 0x42deb6
inc edi
cmp edi, 0xed0
jl 0x42deb4
inc esi
cmp esi, 0x7f71
jl 0x42deb2
mov dword [ebp - 0x20], 0x6130
cmp dword [ebp - 0x20], 0x6314
jle 0x42df28
push 0xe1d
push 0
push 0
call dword [0xad4120]
xor esi, esi
xor edi, edi
mov ebx, 0x56e0
mov eax, edi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
add edi, esi
dec ebx
jne 0x42df0b
inc esi
cmp esi, 0x7a8f
jl 0x42df04
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x38]
movzx eax, ax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 4], 0x10
cmp dword [ebp - 0x14], 0x681b
jge 0x42df4f
push 0xacc218
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x24], 0x2bd1
cmp dword [ebp - 0x24], 0x2c09
jle 0x42dfea
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x14], edi
xor ebx, ebx
mov dword [ebp - 0x28], edi
xor edi, esi
xor esi, esi
lea eax, [esi + ebx]
or eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x1c0]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42df97
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x1c0]
call fcn.00402fe4
inc esi
cmp esi, 0x820
jl 0x42df7a
inc ebx
cmp ebx, 0x6211
jl 0x42df78
mov edi, dword [ebp - 0x14]
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x40b7
mov esi, dword [ebp - 0x18]
jl 0x42df71
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x6561
jl 0x42df6c
push 0x1e30
push 0
call dword [0xad41e4]
mov dword [ebp - 4], 0x12
cmp dword [ebp - 0x1c], 0x4d40
jge 0x42e009
mov edx, 0xacc268
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x14], 0x779c
cmp dword [ebp - 0x14], 0x7a0e
jle 0x42e050
xor esi, esi
xor edi, edi
xor ebx, ebx
lea eax, [ebx + edi]
xor eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc ebx
cmp ebx, 0xe9
jl 0x42e023
inc edi
cmp edi, 0x5c1
jl 0x42e021
inc esi
cmp esi, 0x2312
jl 0x42e01f
mov dword [ebp - 4], 0x14
cmp dword [ebp - 0x20], 0x60c4
jge 0x42e06f
mov edx, 0xacc2a8
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x38]
and eax, dword [ebp - 0x30]
movzx eax, ax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 0x16
cmp dword [ebp - 0x24], 0x2876
jge 0x42e09a
push 0xacc308
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x18
cmp dword [ebp - 0x14], 0x746d
jge 0x42e0bd
mov edx, 0xacc38c
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x28], 0xad6
mov dword [ebp - 0x20], 0x3e62
cmp dword [ebp - 0x20], 0x4100
jle 0x42e13a
push 0
push 0
push 0x1688
push 0
call dword [0xad4220]
xor esi, esi
xor edi, edi
xor ebx, ebx
mov eax, edi
mov ecx, ebx
sar eax, cl
and eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x70]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e10c
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x70]
call fcn.00402fe4
inc ebx
cmp ebx, 0x4203
jl 0x42e0ef
inc edi
cmp edi, 0x1ac2
jl 0x42e0ed
inc esi
cmp esi, 0x57ea
jl 0x42e0eb
mov dword [ebp - 0x24], 0x378f
cmp dword [ebp - 0x24], 0x37ba
jle 0x42e1c0
xor edi, edi
xor esi, esi
mov dword [ebp - 0x1c], esi
mov ebx, esi
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], 0x78f3
mov esi, ebx
mov ebx, 0x2fa6
mov eax, edi
mov ecx, esi
sar eax, cl
cdq
push edx
push eax
lea ecx, [ebp - 0x88]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e182
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x88]
call fcn.00402fe4
dec esi
dec ebx
jne 0x42e164
mov ebx, dword [ebp - 0x14]
dec ebx
mov dword [ebp - 0x14], ebx
dec dword [ebp - 0x18]
jne 0x42e15d
mov esi, dword [ebp - 0x1c]
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x3ce7
jl 0x42e151
inc edi
cmp edi, 0x356f
jl 0x42e14c
mov dword [ebp - 0x14], 0x446f
cmp dword [ebp - 0x14], 0x4534
jle 0x42e21a
xor esi, esi
xor edi, edi
mov eax, esi
mov ecx, edi
shl eax, cl
cdq
push edx
push eax
lea ecx, [ebp - 0xb8]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e1f2
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0xb8]
call fcn.00402fe4
inc edi
cmp edi, 0x2149
jl 0x42e1d4
inc esi
cmp esi, 0x3a86
jl 0x42e1d2
cmp dword [ebp - 0x28], 0x19d2
jle 0x42e2cc
dec ebx
movsb byte es:[edi], byte [esi]
in eax, 0x5a
xor byte [edi + 0x15], 0x64
and edi, ebp
jb 0x42e257
jp 0x42e28f
sbb eax, 0x4efe4291
jae 0x42e25c
xchg esi, eax
test byte [edi + ebx*8 + 0x79], ch
std
inc ecx
adc byte [ebx], cl
rol dword [eax], cl
sub byte [edi], dl
mov ebx, 0x89ba1aa5
lds edx, [ebx - 0x27]
iretd
inc esp
out 0x9d, al
add ebp, dword [ebx]
cmp esi, esp
wait
arpl word [edx + 0x74], bp
cmp ah, dh
daa
xchg edi, eax
jbe 0x42e294
out dx, eax
scasb al, byte es:[edi]
retf 0x5095
clc
in al, 0xc1
loopne 0x42e2bf
or dword [esi + ebp*2 - 0x7f], eax
ror dword [ecx - 0x5e], cl
aaa
jno 0x42e293
mov esi, 0xfc45c77e
sbb al, byte [eax]
add byte [eax], al
mov dword [ebp - 4], 0x1a
cmp dword [ebp - 0x20], 0x3c34
jge 0x42e2e7
push 0xacc440
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x1c
cmp dword [ebp - 0x24], 0x36af
jge 0x42e306
push 0xacc478
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], 0x11a4
cmp dword [ebp - 0x18], 0x13ac
jle 0x42e364
xor esi, esi
xor edi, edi
mov eax, esi
mov ecx, edi
shl eax, cl
cdq
push edx
push eax
lea ecx, [ebp - 0xe8]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e33c
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0xe8]
call fcn.00402fe4
inc edi
cmp edi, 0x6d81
jl 0x42e31e
inc esi
cmp esi, 0x5e1c
jl 0x42e31c
mov dword [ebp - 4], 0x1e
cmp dword [ebp - 0x14], 0x4141
jge 0x42e37f
push 0xacc4c4
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x47b0
cmp dword [ebp - 0x1c], 0x4b7e
jle 0x42e405
push 0x339
push 0
call dword [0xad42e8]
xor esi, esi
mov dword [ebp - 0x14], esi
xor edi, edi
xor ebx, ebx
mov eax, edi
and eax, esi
mov dword [ebp - 0x28], eax
mov esi, eax
mov eax, esi
xor eax, ebx
cdq
push edx
push eax
lea ecx, [ebp - 0x118]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e3ce
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x118]
call fcn.00402fe4
inc ebx
cmp ebx, 0xf0
jl 0x42e3b2
inc edi
cmp edi, 0x65d
mov esi, dword [ebp - 0x14]
jl 0x42e3a7
inc esi
mov dword [ebp - 0x14], esi
cmp esi, 0x73dc
jl 0x42e3a5
mov eax, dword [ebp - 0x38]
and eax, dword [ebp - 0x30]
movzx eax, ax
mov dword [ebp - 0x34], eax
mov dword [ebp - 4], 0x20
cmp dword [ebp - 0x18], 0x1143
jge 0x42e42c
push 0xacc4f8
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x22
cmp dword [ebp - 0x1c], 0x46de
jge 0x42e44b
push 0xacc510
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x28], 0x739
cmp dword [ebp - 0x28], 0x1df2
jle 0x42e4e5
adc al, 0xbf
inc eax
test byte [ebp - 0x757af5db], ch
add esi, dword [0x9e9cc425]
push esi
out dx, eax
mov al, byte [0x9f1f7080]
mov ah, 0x49
int1
out 0x46, eax
mov ebp, 0x44bebc0d
imul eax, dword [0x8509bfbb], 0xd906db1c
sbb byte [edi - 0x4e], 0x13
sub edi, dword [eax + 0x7f846b5c]
aas
retf 0xc558
mov dword [ebp - 0x1c], 0x6a9d
cmp dword [ebp - 0x1c], 0x6cf9
jle 0x42e540
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov ebx, esi
mov dword [ebp - 0x14], 0x50ad
xor esi, esi
mov eax, ebx
and eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc esi
cmp esi, 0x5d81
jl 0x42e507
add ebx, edi
dec dword [ebp - 0x14]
jne 0x42e505
dec edi
cmp edi, 0xffffe636
mov esi, dword [ebp - 0x18]
jg 0x42e4fc
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x4a34
jl 0x42e4fa
mov dword [ebp - 0x30], 0x7e5
mov dword [ebp - 0x20], 0x51e0
cmp dword [ebp - 0x20], 0x55a7
jle 0x42e5a5
xor esi, esi
xor edi, edi
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov eax, ebx
cdq
idiv ecx
lea ecx, [edi + edx]
mov eax, esi
sar eax, cl
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
mov ecx, dword [ebp - 0x14]
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, 0x659a
jl 0x42e562
inc ebx
cmp ebx, 0x2301
jl 0x42e55d
inc edi
cmp edi, 0x6e46
jl 0x42e55b
inc esi
cmp esi, 0x19f9
jl 0x42e559
mov dword [ebp - 0x24], 0x38cb
cmp dword [ebp - 0x24], 0x38fe
jle 0x42e614
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x14], edi
lea eax, [edi + esi]
mov dword [ebp - 0x28], eax
mov edi, 0x7765
mov esi, eax
mov eax, esi
or eax, ebx
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
dec esi
dec edi
jne 0x42e5ce
mov edi, dword [ebp - 0x14]
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x5b61
mov esi, dword [ebp - 0x18]
jl 0x42e5c1
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x4f59
jl 0x42e5bc
inc ebx
cmp ebx, 0xb60
jl 0x42e5b7
push 0
push 0
call dword [0xad41dc]
mov dword [ebp - 4], 0x24
cmp dword [ebp - 0x1c], 0x69e5
jge 0x42e633
mov edx, 0xacc58c
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], 0x2ece
cmp dword [ebp - 0x18], 0x319b
jle 0x42e66e
xor esi, esi
xor edi, edi
mov eax, edi
and eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc edi
cmp edi, 0x791f
jl 0x42e64b
inc esi
cmp esi, 0x2a6d
jl 0x42e649
cmp dword [ebp - 0x30], 0x2535
jle 0x42e735
mov dword [ebp - 0x14], 0x3ccf
cmp dword [ebp - 0x14], 0x3e41
jle 0x42e6d5
xor esi, esi
xor edi, edi
mov eax, esi
mov ecx, edi
shl eax, cl
cdq
push edx
push eax
lea ecx, [ebp - 0x148]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e6ad
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x148]
call fcn.00402fe4
inc edi
cmp edi, 0x65ee
jl 0x42e68f
inc esi
cmp esi, 0x5c01
jl 0x42e68d
mov dword [ebp - 4], 0x28
cmp dword [ebp - 0x20], 0x5038
jge 0x42e754
mov edx, 0xacc5a8
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x2a
cmp dword [ebp - 0x24], 0x3576
jge 0x42e777
mov edx, 0xacc604
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x2c
cmp dword [ebp - 0x18], 0x2bf5
jge 0x42e79a
mov edx, 0xacc638
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x796d
cmp dword [ebp - 0x1c], 0x7c8b
jle 0x42e81c
xor edi, edi
xor ebx, ebx
xor esi, esi
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], 0x7fde
mov eax, ebx
shl eax, cl
and eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x178]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e7de
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x178]
call fcn.00402fe4
mov ecx, dword [ebp - 0x14]
add ecx, esi
mov dword [ebp - 0x14], ecx
dec dword [ebp - 0x18]
jne 0x42e7c0
inc esi
cmp esi, 0x748c
jl 0x42e7b4
inc ebx
cmp ebx, 0x7c55
jl 0x42e7b2
inc edi
cmp edi, 0x1ccc
jl 0x42e7b0
mov eax, dword [ebp - 0x3c]
sub eax, dword [ebp - 0x2c]
movzx eax, ax
mov dword [ebp - 0x40], eax
mov dword [ebp - 4], 0x2e
cmp dword [ebp - 0x1c], 0x776c
jge 0x42e843
push 0xacc740
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x2c], 0x7e6
cmp dword [ebp - 0x2c], 0x257a
jle 0x42e9b8
mov dword [ebp - 0x1c], 0xa19
cmp dword [ebp - 0x1c], 0xce0
jle 0x42e8e0
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x14], edi
xor ebx, ebx
lea eax, [edi + esi]
mov dword [ebp - 0x2c], eax
mov edi, 0x341d
mov esi, eax
mov eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x1a8]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42e89e
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x1a8]
call fcn.00402fe4
add esi, ebx
dec edi
jne 0x42e884
dec ebx
cmp ebx, 0xffffe414
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x14]
jg 0x42e877
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x4007
jl 0x42e875
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x1f60
jl 0x42e870
add byte [eax + edx*4 + 0xb], bh
pop edi
xlatb
or ebx, dword [edi - 0x29]
inc edi
xchg ecx, eax
dec ecx
cmp bl, dh
mov ecx, 0xe8e7379
xchg esp, eax
les edx, [eax + 0x6d2d3e5b]
cmc
pop ds
pop esi
out 0x2c, eax
dec edi
ror dword [eax - 0x7969365f], 0xc5
inc edi
fnsave dword [edi + 0x3a7b2d6f]
cmp dword [esi + 0x131a69c9], ecx
wait
ja 0x42e8dd
mov dword [ebp + 0x54], eax
inc esi
lcall 0x7b5c, 0xcbd20312
int3
mov dword [ebp - 0x1c], 0x35e6
cmp dword [ebp - 0x1c], 0x37a5
jle 0x42ea19
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov eax, esi
cdq
idiv edi
mov ebx, edx
mov dword [ebp - 0x14], 0x9a9
xor esi, esi
mov eax, ebx
mov ecx, esi
sar eax, cl
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc esi
cmp esi, 0x5f96
jl 0x42e9df
inc ebx
dec dword [ebp - 0x14]
jne 0x42e9dd
inc edi
cmp edi, 0x5156
mov esi, dword [ebp - 0x18]
jl 0x42e9cf
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x2323
jl 0x42e9cd
mov dword [ebp - 0x20], 0x5396
cmp dword [ebp - 0x20], 0x564a
jle 0x42ea73
xor esi, esi
xor edi, edi
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov eax, ebx
shl eax, cl
xor eax, edi
xor eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
mov ecx, dword [ebp - 0x14]
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, 0x2696
jl 0x42ea34
inc ebx
cmp ebx, 0x120b
jl 0x42ea2f
inc edi
cmp edi, 0x4eec
jl 0x42ea2d
inc esi
cmp esi, 0x6e59
jl 0x42ea2b
mov dword [ebp - 0x28], 0x646
mov dword [ebp - 4], 0x32
cmp dword [ebp - 0x1c], 0x342b
jge 0x42ea99
mov edx, 0xacc840
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x24], 0x1608
cmp dword [ebp - 0x24], 0x179f
jle 0x42eb10
push 0x144a
push 0
call dword [0xad41d8]
xor edi, edi
xor esi, esi
mov dword [ebp - 0x1c], esi
xor ebx, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], 0x6221
mov esi, ebx
mov ebx, 0x3cff
mov eax, edi
mov ecx, esi
shl eax, cl
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
dec esi
dec ebx
jne 0x42ead4
mov esi, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x14]
add ebx, esi
mov dword [ebp - 0x14], ebx
dec dword [ebp - 0x18]
jne 0x42eacd
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x7374
jl 0x42eac1
inc edi
cmp edi, 0x485e
jl 0x42eabc
mov dword [ebp - 4], 0x34
cmp dword [ebp - 0x20], 0x52c9
jge 0x42eb2f
mov edx, 0xacc870
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x20], 0x53f6
cmp dword [ebp - 0x20], 0x5599
jle 0x42eb80
xor esi, esi
xor edi, edi
mov eax, edi
or eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc edi
cmp edi, 0x3af
jl 0x42eb47
inc esi
cmp esi, 0x6190
jl 0x42eb45
push 0
push 0
push 0x20e7
push 0x9b9
push 0
call dword [0xad42f8]
mov dword [ebp - 0x30], 0x3bff
cmp dword [ebp - 0x30], 0x3c37
jle 0x42ec18
push 0
call dword [0xad402c]
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x14], edi
and dword [ebp - 0x3c], 0
mov dword [ebp - 0x2c], edi
and edi, esi
mov esi, dword [ebp - 0x3c]
mov eax, esi
or eax, ebx
or eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x1d8]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42ebd2
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x1d8]
call fcn.00402fe4
inc esi
cmp esi, 0x779
jl 0x42ebb4
mov edi, dword [ebp - 0x14]
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x39c9
mov esi, dword [ebp - 0x18]
jl 0x42eba8
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x41cf
jl 0x42eba3
inc ebx
cmp ebx, 0x7ff6
jl 0x42eb9e
mov dword [ebp - 0x38], 0x1de8
cmp dword [ebp - 0x38], 0x20eb
jle 0x42ec4e
xor esi, esi
xor edi, edi
lea eax, [edi + esi]
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc edi
cmp edi, 0xbaf
jl 0x42ec2c
inc esi
cmp esi, 0xec6
jl 0x42ec2a
cmp dword [ebp - 0x28], 0x148e
jle 0x42eda4
mov dword [ebp - 0x1c], 0x6ac9
cmp dword [ebp - 0x1c], 0x6ddf
jle 0x42ecc8
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x14], edi
and dword [ebp - 0x3c], 0
mov dword [ebp - 0x2c], esi
mov ecx, edi
shl esi, cl
mov edi, dword [ebp - 0x3c]
mov eax, esi
and eax, edi
xor eax, ebx
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc edi
cmp edi, 0x6f63
jl 0x42ec85
mov edi, dword [ebp - 0x14]
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x7844
mov esi, dword [ebp - 0x18]
jl 0x42ec77
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x3b50
jl 0x42ec72
inc ebx
cmp ebx, 0x79a2
jl 0x42ec6d
mov edx, 0xa48c466c
dec ebp
out 0x85, eax
pop ss
add dh, byte [edx + 0x48bb3437]
jg 0x42ed3d
cdq
clc
add esi, ebp
and byte [esi - 0x5e], dh
ret 0x86ec
mov dword [ebp - 4], 0x38
cmp dword [ebp - 0x24], 0x157e
jge 0x42edc3
mov edx, 0xacc8e8
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], 0x1889
cmp dword [ebp - 0x18], 0x1acb
jle 0x42ee18
push 0
call dword [0xad4018]
xor esi, esi
xor edi, edi
mov dword [ebp - 0x14], 0x3211
xor ebx, ebx
mov eax, edi
mov ecx, ebx
shl eax, cl
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc ebx
cmp ebx, 0x3de8
jl 0x42edec
add edi, esi
dec dword [ebp - 0x14]
jne 0x42edea
inc esi
cmp esi, 0xf4d
jl 0x42ede1
mov dword [ebp - 4], 0x3a
cmp dword [ebp - 0x20], 0x504d
jge 0x42ee37
mov edx, 0xacc970
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x3c
cmp dword [ebp - 0x30], 0x382e
jge 0x42ee56
push 0xacc9c8
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x3e
cmp dword [ebp - 0x38], 0x1aa1
jge 0x42ee79
mov edx, 0xacca14
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x43a1
cmp dword [ebp - 0x1c], 0x4650
jle 0x42eec6
xor esi, esi
xor edi, edi
xor ebx, ebx
mov eax, edi
cdq
idiv ebx
mov eax, esi
mov ecx, edx
shl eax, cl
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc ebx
cmp ebx, 0x6ad7
jl 0x42ee93
inc edi
cmp edi, 0x2451
jl 0x42ee91
inc esi
cmp esi, 0x51e
jl 0x42ee8f
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x34]
movzx eax, ax
mov dword [ebp - 0x40], eax
mov dword [ebp - 4], 0x40
cmp dword [ebp - 0x18], 0x15c9
jge 0x42eef1
mov edx, 0xaccacc
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x20], 0x436a
cmp dword [ebp - 0x20], 0x45f1
jle 0x42ef67
push 0xdbf
push 0
push 0
push 0
call dword [0xad41e0]
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov eax, esi
cdq
idiv edi
mov ebx, edx
mov dword [ebp - 0x14], 0x6e64
xor esi, esi
mov eax, ebx
mov ecx, esi
shl eax, cl
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc esi
cmp esi, 0x7b95
jl 0x42ef2d
inc ebx
dec dword [ebp - 0x14]
jne 0x42ef2b
inc edi
cmp edi, 0x3188
mov esi, dword [ebp - 0x18]
jl 0x42ef1d
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x3cc6
jl 0x42ef1b
mov dword [ebp - 0x24], 0x2804
cmp dword [ebp - 0x24], 0x2a59
jle 0x42efdc
push 0
call dword [0xad41ac]
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x14], edi
xor ebx, ebx
and dword [ebp - 0x34], 0
mov eax, edi
cdq
idiv ebx
mov edi, esi
sub edi, edx
mov esi, dword [ebp - 0x34]
mov eax, edi
and eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc esi
cmp esi, 0x4870
jl 0x42ef9b
inc ebx
cmp ebx, 0x1108
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x14]
jl 0x42ef8b
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x74c3
jl 0x42ef89
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x1113
jl 0x42ef84
mov dword [ebp - 4], 0x42
cmp dword [ebp - 0x1c], 0x4046
jge 0x42effb
mov edx, 0xaccb58
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x34], 0xa70
mov dword [ebp - 0x18], 0x363c
cmp dword [ebp - 0x18], 0x3956
jle 0x42f03d
xor esi, esi
xor edi, edi
mov eax, edi
or eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc edi
cmp edi, 0x173b
jl 0x42f01a
inc esi
cmp esi, 0x69d3
jl 0x42f018
mov dword [ebp - 4], 0x44
cmp dword [ebp - 0x20], 0x41ce
jge 0x42f05c
mov edx, 0xaccbc0
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x7c68
cmp dword [ebp - 0x1c], 0x7f3a
jle 0x42f0bd
xor esi, esi
xor edi, edi
mov ebx, 0x66a3
mov eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x208]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42f093
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x208]
call fcn.00402fe4
add edi, esi
dec ebx
jne 0x42f079
inc esi
cmp esi, 0x6475
jl 0x42f072
call dword [0xad4088]
mov dword [ebp - 4], 0x46
cmp dword [ebp - 0x24], 0x2446
jge 0x42f0dc
mov edx, 0xaccbf0
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x20], 0x49e1
cmp dword [ebp - 0x20], 0x4c64
jle 0x42f117
xor esi, esi
xor edi, edi
mov eax, edi
and eax, esi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
inc edi
cmp edi, 0x444
jl 0x42f0f4
inc esi
cmp esi, 0x5a68
jl 0x42f0f2
cmp dword [ebp - 0x34], 0x16c0
jle 0x42f251
mov dword [ebp - 0x14], 0x5ac
cmp dword [ebp - 0x14], 0x85d
jle 0x42f188
xor esi, esi
xor edi, edi
xor ebx, ebx
lea eax, [ebx + edi]
and eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x238]
call fcn.0040502d
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x42f157
mov eax, dword [eax]
push eax
call fcn.004c024a
pop ecx
push 0
push 1
lea ecx, [ebp - 0x238]
call fcn.00402fe4
inc ebx
cmp ebx, 0xd69
jl 0x42f13a
inc edi
cmp edi, 0x2d32
jl 0x42f138
inc esi
cmp esi, 0x2032
jl 0x42f136
int 0xf
push esi
salc
pop ds
or dword [esi - 0x4d], esi
or ebx, dword [ebx]
mov dh, 0x4a
aam 0x66
pop edx
xor al, 0xa9
sub al, 0x8a
xor ecx, ebx
invalid
mov dword [ebp - 4], 0x4a
cmp dword [ebp - 0x18], 0x335f
jge 0x42f270
mov edx, 0xaccc10
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x34], 0x4564
cmp dword [ebp - 0x34], 0x46b7
jle 0x42f2c0
xor esi, esi
mov edi, esi
mov ebx, 0x5251
mov eax, edi
cdq
push edx
push eax
mov ecx, 0xad1af8
call fcn.0042a01e
dec edi
dec ebx
jne 0x42f28d
inc esi
cmp esi, 0x3c25
jl 0x42f286
push 0x2600
push 0x12b5
push ebx
push 0x8b0
push ebx
call dword [0xad42f0]
mov dword [ebp - 4], 0x4c
cmp dword [ebp - 0x1c], 0x78ab
jge 0x42f2db
push 0xaccc78
call fcn.004c024a
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x4e
cmp dword [ebp - 0x20], 0x493c
jge 0x42f2fe
mov edx, 0xacccd4
mov ecx, 0xad1af8
call fcn.0042d6c2
or dword [ebp - 4], 0xffffffff
mov ax, word [ebp - 0x40]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret