Function at 0x42ba78
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x94
mov eax, dword [0x4506d8]
mov dword [esp + 0x24], 0xf1cd0feb
mov dword [esp + 0x28], 0xf562f360
mov dword [esp + 0x2c], 0xf955f730
mov dword [esp + 0x30], 0xfd59fb6c
mov dword [esp + 0x34], 0xe142ff1b
mov dword [esp + 0x38], 0xe573e32e
mov dword [esp + 0x3c], 0xe941e770
mov dword [esp + 0x40], 0xed49eb78
mov dword [esp + 0x44], 0xd103ef48
mov dword [esp + 0x48], 0xd56ed33d
mov dword [esp + 0x4c], 0xd971d741
mov dword [esp + 0x50], 0xdd4fdb4d
mov dword [esp + 0x54], 0xc14fdf77
mov dword [esp + 0x58], 0xc52cc36e
mov dword [esp + 0x5c], 0xc969c75c
mov dword [esp + 0x60], 0xcdcacb64
mov byte [esp + 0x64], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x40
ja 0x42b2ab
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x24]
mov esi, ecx
xor esi, 0x1ea56dfd
and ecx, 0x1ea56dfd
lea ecx, [esi + ecx*2]
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0xf
mov edx, dword [esp]
mov byte [esp + edx + 0x24], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x41
jb 0x42b270
lea esi, [esp + 0x90]
lea ecx, [esp + 0x24]
push esi
push 0
push 0
push 0x1f
push ecx
push 0
call eax
mov edi, dword [esp + 0x90]
test edi, edi
jns 0x42b2d4
mov eax, 0xffffffff
jmp 0x42b2d7
lea eax, [edi + edi]
push eax
call fcn.0040ca10
add esp, 4
mov dword [esp + 0x80], eax
mov eax, dword [0x4506d8]
mov dword [esp + 0x24], 0xe9adeb8f
mov dword [esp + 0x28], 0xed7eef78
mov dword [esp + 0x2c], 0xd175d3a8
mov dword [esp + 0x30], 0xd571d744
mov dword [esp + 0x34], 0xd966dbbf
mov dword [esp + 0x38], 0xdd4fdf6a
mov dword [esp + 0x3c], 0xc169c348
mov dword [esp + 0x40], 0xc561c750
mov dword [esp + 0x44], 0xc9a7cb60
mov dword [esp + 0x48], 0xcd72cfa5
mov dword [esp + 0x4c], 0x31993359
mov dword [esp + 0x50], 0x35a337a5
mov dword [esp + 0x54], 0x39ab3b9b
mov dword [esp + 0x58], 0x3d6c3faa
mov dword [esp + 0x5c], 0x21b123a4
mov dword [esp + 0x60], 0x2526278c
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x3f
ja 0x42b3bb
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x24]
mov ebx, ecx
xor ebx, 0xc871b2d7
and ecx, 0xc871b2d7
lea ecx, [ebx + ecx*2]
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0xcd
mov edx, dword [esp]
mov byte [esp + edx + 0x24], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x40
jb 0x42b380
push esi
push edi
mov ebp, dword [esp + 0x88]
push ebp
push 0x1f
lea ecx, [esp + 0x34]
push ecx
push 0
call eax
lea eax, [esp + 0x78]
push 0x60
push 3
push 0x120089
push eax
push ebp
call fcn.00443ba0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44c9cc]
xor ebx, ebx
jmp dword [0x44cac4]
lea eax, [esp + 0x8c]
push 0
push eax
push dword [esp + 0x80]
call fcn.00443f50
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [esp + 0x10], 0
jmp dword [eax*4 + 0x44c9d4]
mov esi, dword [esp + 0x8c]
mov eax, esi
and eax, 1
mov ecx, esi
xor ecx, 1
lea eax, [ecx + eax*2]
push eax
call fcn.0040ca10
add esp, 4
push 0
push esi
mov dword [esp + 0x84], eax
push eax
push dword [esp + 0x84]
call fcn.00444050
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 0x10], 0
jmp dword [eax*4 + 0x44c9dc]
mov ebp, dword [esp + 0x80]
jmp dword [0x44cabc]
push dword [esp + 0x7c]
call fcn.0040ca20
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x24], 0x909f9e9d
mov word [esp + 0x28], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 5
ja 0x42b4fc
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x24]
mov esi, ecx
xor esi, 0xe45132a5
and ecx, 0xe45132a5
lea ecx, [esi + ecx*2]
lea esi, [ecx + edx]
and ecx, edx
mov edx, esi
xor edx, ecx
add edx, ecx
not ecx
and ecx, esi
add ecx, ecx
sub ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0xc7
mov edx, dword [esp]
mov byte [esp + edx + 0x24], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 6
jb 0x42b4b0
mov ecx, dword [0x4506dc]
test ecx, ecx
je 0x42b53c
mov edx, dword [esp + 0x24]
xor esi, esi
mov edi, dword [0x4506e0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x42b530
inc esi
cmp ecx, esi
jne 0x42b520
jmp 0x42b53c
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42beb2
mov ebx, dword [esp + 0x10]
and bl, 1
jmp dword [0x44cac4]
push ebp
call fcn.0040ca20
add esp, 4
mov eax, dword [case.0x42b3ec.63]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, ebx
add esp, 0x94
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x7c]
mov byte [ecx + eax], 0
lea ebp, [esp + 0x2f]
mov dword [esp + 0x10], 0
mov edi, ecx
jmp dword [0x44c9e8]
mov dword [esp + 0x24], 0xd2dedcd6
mov dword [esp + 0x28], 0xded5d8da
mov word [esp + 0x2c], 0x9d87
mov byte [esp + 0x2e], 0x42
mov byte [ebp + 2], 0
mov word [ebp], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xd
ja case.0x42b3ec.7
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x24]
lea edx, [ecx + ecx]
and edx, 0xeef68126
sub ecx, edx
add ecx, 0x777b4093
mov esi, ecx
and esi, edx
xor ecx, edx
lea ecx, [ecx + esi*2]
lea edx, [ecx + eax]
not eax
or ecx, eax
sub eax, ecx
lea eax, [edx + eax*2]
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0x21
mov ecx, dword [esp]
mov byte [esp + ecx + 0x24], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xe
jb 0x42b5d0
mov dword [esp + 0x24], 0xd2dedcd6
mov dword [esp + 0x28], 0xded5d8da
mov word [esp + 0x2c], 0x9d87
mov byte [esp + 0x2e], 0x42
mov byte [ebp + 2], 0
mov word [ebp], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xd
ja 0x42b6ad
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x24]
lea edx, [ecx + ecx]
and edx, 0xeef68126
sub ecx, edx
add ecx, 0x777b4093
mov esi, ecx
and esi, edx
xor ecx, edx
lea ecx, [ecx + esi*2]
lea edx, [ecx + eax]
not eax
or ecx, eax
sub eax, ecx
lea eax, [edx + eax*2]
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0x21
mov ecx, dword [esp]
mov byte [esp + ecx + 0x24], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xe
jb 0x42b660
movzx edx, byte [esp + 0x24]
mov ebx, edi
test dl, dl
je 0x42b700
lea eax, [esp + 0x24]
mov ecx, edi
mov ebx, edi
jmp 0x42b6d7
movzx edx, byte [eax]
test dl, dl
je 0x42b700
mov dh, byte [ecx]
test dh, dh
je 0x42b710
inc ecx
inc eax
lea esi, [ebx + 1]
cmp dh, dl
je 0x42b6ea
mov ebx, esi
mov ecx, esi
je 0x42b6d0
lea eax, [esp + 0x24]
jmp 0x42b6d0
jmp dword [0x44c9f0]
xor ebx, ebx
jmp dword [0x44c9f0]
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x44c9f4]
jmp dword [0x44ca08]
lea edi, [ebx + 0xa]
movzx eax, byte [ebx + 0xa]
xor esi, esi
test al, al
je 0x42b730
mov ecx, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x22
je 0x42b760
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x42b750
jmp 0x42b730
mov esi, ecx
jmp dword [0x44ca08]
mov eax, esi
xor eax, edi
mov ecx, edi
not ecx
and ecx, esi
add ecx, ecx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
sub ecx, eax
xor eax, eax
mov edx, ecx
mov dword [esp + 0x18], ecx
cmp ecx, 5
setb al
jmp dword [eax*4 + 0x44ca0c]
xor eax, eax
cmp byte [esi - 1], 0x74
setne al
jmp dword [eax*4 + 0x44ca14]
xor eax, eax
cmp byte [esi - 2], 0x78
setne al
jmp dword [eax*4 + 0x44ca1c]
xor eax, eax
cmp byte [esi - 3], 0x74
setne al
jmp dword [eax*4 + 0x44ca24]
xor eax, eax
cmp byte [esi - 4], 0x2e
setne al
jmp dword [eax*4 + 0x44ca2c]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x14], esi
jmp dword [0x44ca34]
mov ecx, dword [esp + 0x18]
mov eax, ecx
inc eax
lea eax, [ecx + ecx + 2]
jns 0x42b7f9
mov eax, 0xffffffff
push eax
call fcn.0040ca10
add esp, 4
mov ebp, eax
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x18]
lea eax, [eax*2]
add eax, ebp
mov dword [esp + 8], eax
cmp ebp, eax
jae 0x42b860
cmp edi, dword [esp + 0x14]
jae 0x42b860
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi], 0
je 0x42b860
lea eax, [esp + 0x24]
push eax
mov esi, dword [esp + 0x18]
push esi
push edi
call fcn.004111e0
add esp, 0xc
movzx ecx, word [esp + 0x24]
mov word [ebp], cx
add ebp, 2
cmp ebp, dword [esp + 8]
jae 0x42b860
add edi, eax
cmp edi, esi
jb 0x42b830
mov word [ebp], 0
mov esi, dword [esp + 0x14]
jmp case.0x42b3ec.26
mov word [esi], 0
lea ebp, [esp + 0x2f]
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
jmp dword [0x44ca3c]
mov edi, dword [esp + 0x18]
mov eax, edi
inc eax
jns 0x42b8a0
mov eax, 0xffffffff
jmp 0x42b8a7
lea eax, [edi*2 + 2]
push eax
call fcn.0040ca10
add esp, 4
mov ebp, esi
test esi, esi
jne 0x42b8cb
lea ecx, [ebx + 9]
nop
nop
nop
nop
nop
nop
nop
lea ebp, [ecx + 1]
cmp byte [ecx + 1], 0
mov ecx, ebp
jne 0x42b8c0
lea ecx, [eax + edi*2]
add ecx, 2
mov dword [esp + 0x24], 0
add ecx, 0xfffffffe
mov esi, eax
mov dword [esp + 0x20], eax
mov dword [esp + 8], ecx
cmp eax, ecx
jae 0x42b870
mov esi, dword [esp + 0x20]
cmp dword [esp + 0x1c], ebp
jae 0x42b870
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x1c]
cmp byte [edi], 0
je 0x42b870
lea eax, [esp + 0x24]
push eax
push ebp
push edi
call fcn.004111e0
add esp, 0xc
movzx ecx, word [esp + 0x24]
mov word [esi], cx
add esi, 2
cmp esi, dword [esp + 8]
jae 0x42b870
add edi, eax
cmp edi, ebp
jb 0x42b900
jmp 0x42b870
mov ecx, dword [esp + 0x20]
mov ebx, ecx
not ebx
lea eax, [esp + 0x74]
push 0x60
push 3
push 0x120089
push eax
push ecx
call fcn.00443ba0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44ca44]
mov edi, esi
jmp dword [0x44cab4]
push dword [esp + 0x20]
call fcn.0040ca20
add esp, 4
mov edi, esi
jmp dword [0x44c9e8]
lea eax, [esp + 0x70]
push 0
push eax
push dword [esp + 0x7c]
call fcn.00443f50
add esp, 0xc
mov esi, dword [esp + 0x70]
mov ecx, dword [case.0x42b3ec.34]
nop
nop
nop
nop
jmp ecx
test eax, eax
setns al
cmp esi, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44ca5c]
push esi
call fcn.0040ca10
add esp, 4
push 0
push esi
mov dword [esp + 0x74], eax
push eax
push dword [esp + 0x80]
call fcn.00444050
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44ca64]
xor eax, eax
mov ecx, dword [esp + 0x20]
jmp 0x42b9f8
add ecx, 2
test si, si
je 0x42ba09
mov edx, eax
movzx esi, word [ecx]
mov eax, ecx
cmp si, 0x5c
je 0x42b9f0
mov eax, edx
jmp 0x42b9f0
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x44ca6c]
mov dword [esp + 0x68], 0
xor ebx, ebx
jmp dword [0x44ca84]
jmp dword [0x44ca80]
and ebx, eax
add ebx, ebx
mov ecx, dword [esp + 0x20]
xor ecx, eax
sub ebx, ecx
sar ebx, 1
mov eax, ebx
not eax
add eax, dword [esp + 0x18]
mov dword [esp + 0x68], eax
inc ebx
jmp dword [0x44ca84]
jmp dword [0x44c9e8]
push dword [esp + 0xc]
call fcn.0040ca20
add esp, 4
jmp dword [0x44ca9c]
mov eax, dword [esp + 0x68]
add eax, 0x1b
push eax
call fcn.0040ca10
add esp, 4
mov dword [esp + 0xc], eax
mov eax, edi
mov edi, dword [esp + 0x18]
sub edi, ebx
mov dword [esp + 0x24], 0xa4a2a449
mov dword [esp + 0x28], 0xd9cfe1de
mov dword [esp + 0x2c], 0xd23409e4
mov dword [esp + 0x30], 0x10d5d8d0
mov dword [esp + 0x34], 0xdeeed636
mov dword [esp + 0x38], 0x4c2dccc
mov dword [esp + 0x3c], 0x7a0e03
mov dword [esp + 8], ebx
lea edx, [eax + ebx]
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1b
ja 0x42bb3f
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x24]
mov ebx, esi
or ebx, 0x705e5cc3
mov ebp, esi
not ebp
or ebp, 0x8fa1a33c
and ebp, ebx
not ebp
and esi, 0xfa1a33c
lea esi, [esi*2]
add esi, ebp
xor esi, ecx
mov dword [esp + 4], esi
mov ecx, dword [esp + 4]
add cl, 0xd4
mov esi, dword [esp]
mov byte [esp + esi + 0x24], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x1c
jb 0x42baf0
movzx ecx, byte [esp + 0x24]
mov ebx, dword [esp + 0xc]
test cl, cl
je 0x42bb6b
lea esi, [esp + 0x25]
mov ebx, dword [esp + 0xc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x42bb60
mov byte [ebx], 0
test edi, edi
je 0x42bb98
mov esi, edi
and esi, 3
lea ebp, [esp + 0x2f]
je 0x42bba0
xor ecx, ecx
nop
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx + ecx], al
inc ecx
cmp esi, ecx
jne 0x42bb80
add ebx, ecx
sub edi, ecx
mov esi, ebx
jmp 0x42bba0
mov esi, ebx
lea ebp, [esp + 0x2f]
jmp 0x42bbf5
mov eax, dword [esp + 8]
sub eax, dword [esp + 0x84]
add eax, dword [esp + 0x88]
cmp eax, 0xfffffffc
ja 0x42bbf5
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx], al
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx + 1], al
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ebx + 2], al
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
lea esi, [ebx + 4]
mov byte [ebx + 3], al
mov ebx, esi
add edi, 0xfffffffc
jne 0x42bbc0
mov byte [esi], 0
mov ecx, dword [esp + 0xa8]
push dword [esp + 0x70]
push dword [esp + 0x70]
push dword [esp + 0x14]
call fcn.0040d5a0
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 8]
mov eax, dword [esp + 0x68]
add eax, 0x1b
push eax
call fcn.0040ca10
add esp, 4
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x18]
sub eax, ebx
mov dword [esp + 0x24], 0xa4a2a449
mov dword [esp + 0x28], 0xd9cfe1de
mov dword [esp + 0x2c], 0xd23409e4
mov dword [esp + 0x30], 0x10d5d8d0
mov dword [esp + 0x34], 0xdeeed636
mov dword [esp + 0x38], 0x4c2dccc
mov dword [esp + 0x3c], 0x7a0e03
mov dword [esp + 8], ebx
lea ecx, [edi + ebx]
mov dword [esp], 0
mov edx, dword [esp]
cmp edx, 0x1b
ja 0x42bcc9
mov esi, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x24]
mov edi, esi
or edi, 0x705e5cc3
mov ebx, esi
not ebx
or ebx, 0x8fa1a33c
and ebx, edi
not ebx
and esi, 0xfa1a33c
lea esi, [ebx + esi*2]
xor esi, edx
mov dword [esp + 4], esi
mov edx, dword [esp + 4]
add dl, 0xd4
mov esi, dword [esp]
mov byte [esp + esi + 0x24], dl
inc dword [esp]
mov edx, dword [esp]
cmp edx, 0x1c
jb 0x42bc80
movzx ebx, byte [esp + 0x24]
mov edx, dword [esp + 0xc]
test bl, bl
je 0x42bceb
lea esi, [esp + 0x25]
mov edx, dword [esp + 0xc]
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x42bce0
mov byte [edx], 0
test eax, eax
je 0x42bd19
mov edi, eax
and edi, 3
je 0x42bd21
xor esi, esi
nop
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [edx + esi], bl
inc esi
cmp edi, esi
jne 0x42bd00
add edx, esi
sub eax, esi
mov esi, edx
jmp 0x42bd21
mov esi, edx
mov edi, dword [esp + 0x1c]
jmp 0x42bd79
mov edi, dword [esp + 8]
sub edi, dword [esp + 0x84]
add edi, dword [esp + 0x88]
cmp edi, 0xfffffffc
mov edi, dword [esp + 0x1c]
ja 0x42bd79
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [edx], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [edx + 1], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [edx + 2], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
lea esi, [edx + 4]
mov byte [edx + 3], bl
mov edx, esi
add eax, 0xfffffffc
jne 0x42bd40
mov byte [esi], 0
mov ecx, dword [esp + 0xa8]
push dword [esp + 0x70]
push dword [esp + 0x70]
push dword [esp + 0x14]
call fcn.0040d5a0
mov ebx, dword [esp + 8]
jmp dword [0x44ca90]
mov ecx, dword [esp + 0x10]
and cl, 1
or cl, al
mov dword [esp + 0x10], ecx
jmp dword [0x44ca94]
jmp dword [0x44ca9c]
push dword [esp + 0x6c]
call fcn.0040ca20
add esp, 4
mov eax, dword [case.0x42b3ec.36]
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x24], 0x909f9e9d
mov word [esp + 0x28], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 5
ja 0x42be4c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x24]
mov esi, ecx
xor esi, 0xe45132a5
and ecx, 0xe45132a5
lea ecx, [esi + ecx*2]
lea esi, [ecx + edx]
and ecx, edx
mov edx, esi
xor edx, ecx
add edx, ecx
not ecx
and ecx, esi
add ecx, ecx
sub ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0xc7
mov edx, dword [esp]
mov byte [esp + edx + 0x24], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 6
jb 0x42be00
mov ecx, dword [0x4506dc]
test ecx, ecx
je 0x42be88
mov edx, dword [esp + 0x24]
xor esi, esi
mov edi, dword [0x4506e0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x42be80
inc esi
cmp ecx, esi
jne 0x42be70
jmp 0x42be88
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42be94
mov esi, dword [esp + 0x14]
mov edi, esi
jmp dword [0x44cab4]
push eax
push 1
push dword [0x4506e4]
push ecx
call fcn.00440260
add esp, 0x10
mov esi, dword [esp + 0x14]
mov edi, esi
jmp dword [0x44cab4]
push eax
push 1
push dword [0x4506e4]
push ecx
call fcn.00440260
add esp, 0x10
mov ebx, dword [esp + 0x10]
and bl, 1
jmp dword [0x44cac4]