Function at 0x44b560
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e8cb2
mov eax, dword fs:[0]
push eax
sub esp, 0x458
mov eax, dword [0x52610c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ebx, dword [ebp + 8]
cmp dword [ebx + 0x18], 0x10
lea esi, [ebx + 4]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1a0], ebx
mov dword [ebp - 0x194], eax
jb 0x44b5af
mov edx, dword [esi]
jmp 0x44b5b1
mov edx, esi
mov eax, 0xb
cmp dword [esi + 0x10], eax
cmovb eax, dword [esi + 0x10]
push eax
push str.sendCommand
push edx
call fcn.00413df0
add esp, 0xc
test eax, eax
jne 0x44b709
mov eax, dword [esi + 0x10]
cmp eax, 0xb
jb 0x44b709
ja 0x44b709
push dword [ebp - 0x194]
mov ecx, dword [edi]
call fcn.0043bc20
mov dword [ebp - 0x194], eax
mov bl, 5
mov ah, 0x66
mov dword [ebp - 0x20], 0x2090566
mov al, 9
mov word [ebp - 0x1c], 3
mov cl, 2
mov dl, 3
mov dword [ebp - 4], 0
xor bl, ah
xor al, ah
mov byte [ebp - 0x1a], bl
xor cl, ah
mov byte [ebp - 0x19], al
xor dl, ah
mov byte [ebp - 0x18], cl
mov byte [ebp - 0x17], dl
mov byte [ebp - 0x16], 0
mov dword [ebp - 0xb4], 0xf
mov dword [ebp - 0xb8], 0
mov byte [ebp - 0xc8], 0
test bl, bl
jne 0x44b652
xor ecx, ecx
jmp 0x44b661
lea ecx, [ebp - 0x1a]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44b658
sub ecx, edx
push ecx
lea eax, [ebp - 0x1a]
push eax
lea ecx, [ebp - 0xc8]
call fcn.00409aa0
lea eax, [ebp - 0x194]
mov byte [ebp - 4], 1
push eax
lea edx, [ebp - 0xc8]
lea ecx, [ebp - 0xe0]
call fcn.0044cae0
add esp, 4
mov byte [ebp - 4], 2
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44b6a9
mov edx, dword [ecx]
mov ebx, dword [ebp - 0x1a0]
push 0
push eax
push ebx
call dword [edx]
mov eax, dword [ebp - 0xcc]
cmp eax, 0x10
jb 0x44b6c7
inc eax
lea ecx, [ebp - 0xe0]
push eax
push dword [ebp - 0xe0]
call fcn.00409950
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0xcc], 0xf
mov dword [ebp - 0xd0], 0
mov byte [ebp - 0xe0], 0
cmp eax, 0x10
jb 0x44c371
inc eax
lea ecx, [ebp - 0xc8]
push eax
push dword [ebp - 0xc8]
call fcn.00409950
jmp 0x44c371
mov edx, str.startBuff
mov ecx, esi
call fcn.0042bf60
test al, al
je 0x44ba1b
push str.gameid
lea ecx, [ebp - 0xc8]
call fcn.00409ba0
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 3
mov ebx, dword [ebp - 0x194]
mov ecx, ebx
push eax
lea eax, [ebp - 0xe0]
push eax
call fcn.0044ab60
push eax
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 4
mov ecx, dword [edi + 8]
push eax
call fcn.00455050
mov eax, dword [ebp - 0xcc]
cmp eax, 0x10
jb 0x44b781
inc eax
lea ecx, [ebp - 0xe0]
push eax
push dword [ebp - 0xe0]
call fcn.00409950
mov dword [ebp - 0xcc], 0xf
mov dword [ebp - 0xd0], 0
mov byte [ebp - 0xe0], 0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0xb4]
cmp eax, 0x10
jb 0x44b7be
inc eax
lea ecx, [ebp - 0xc8]
push eax
push dword [ebp - 0xc8]
call fcn.00409950
mov ecx, dword [edi]
lea eax, [ebp - 0x188]
push eax
push ebx
mov dword [ebp - 0xb4], 0xf
mov dword [ebp - 0xb8], 0
mov byte [ebp - 0xc8], 0
call fcn.00436cd0
mov dword [ebp - 0x194], eax
mov cl, 0x36
mov dword [ebp - 0x190], eax
mov dl, 0x3a
mov ah, 0x55
mov dword [ebp - 0x20], 0x313a3655
mov bl, 0x31
mov word [ebp - 0x1c], 0x30
mov al, 0x30
mov byte [ebp - 4], 8
xor al, ah
xor cl, ah
mov byte [ebp - 0x17], al
xor dl, ah
mov byte [ebp - 0x1a], cl
xor bl, ah
mov byte [ebp - 0x19], dl
lea eax, [ebp - 0x1a]
mov byte [ebp - 0x18], bl
push eax
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x16], 0
call fcn.00409ba0
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 9
push eax
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0xb0]
call fcn.0044cae0
add esp, 4
mov byte [ebp - 4], 0xa
mov ecx, dword [edi + 0x10]
mov ebx, dword [ebp - 0x1a0]
test ecx, ecx
je 0x44b868
mov edx, dword [ecx]
push 1
push eax
push ebx
call dword [edx]
mov eax, dword [ebp - 0x9c]
cmp eax, 0x10
jb 0x44b886
inc eax
lea ecx, [ebp - 0xb0]
push eax
push dword [ebp - 0xb0]
call fcn.00409950
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x9c], 0xf
mov dword [ebp - 0xa0], 0
mov byte [ebp - 0xb0], 0
cmp eax, 0x10
jb 0x44b8b6
inc eax
lea ecx, [ebp - 0x68]
push eax
push dword [ebp - 0x68]
call fcn.00409950
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x194]
cmp eax, 0x3e8
je 0x44b95e
sub esp, 8
lea ecx, [ebp - 0x254]
call fcn.00404ce0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x244]
push dword [ebp - 0x194]
mov edx, str.Webuff_enable_failed:
call fcn.00406090
mov ecx, eax
call fcn.004158f0
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x254]
call fcn.00404bd0
mov byte [ebp - 4], 0xc
cmp dword [eax + 0x14], 0x10
jb 0x44b915
mov eax, dword [eax]
push eax
push 2
call fcn.004041c0
mov ecx, eax
call fcn.00404860
lea ecx, [ebp - 0x68]
call fcn.00409550
lea ecx, [ebp - 0x1ec]
call fcn.00404bf0
lea eax, [ebp - 0x1ec]
mov byte [ebp - 4], 0xd
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0049c747
mov byte [ebp - 4], 7
add esp, 4
mov eax, dword [ebp - 0x194]
cmp eax, 0x3ea
jle 0x44b972
mov ecx, dword [edi]
call fcn.00434790
mov eax, dword [ebp - 0x194]
cmp eax, 0x3e8
jne 0x44ba0b
sub esp, 0x20
mov eax, esp
mov dword [ebp - 0x190], eax
lea ecx, [eax + 4]
mov dword [ebp - 0x190], ecx
mov dword [eax], edi
mov eax, dword [ebx]
mov dword [ecx], eax
add ecx, 4
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x14], 0xf
cmp dword [ecx + 0x14], 0x10
mov dword [ecx + 0x10], 0
jb 0x44b9c0
mov eax, dword [ecx]
jmp 0x44b9c2
mov eax, ecx
push 0xffffffffffffffff
push 0
push esi
mov byte [eax], 0
call fcn.00409640
lea ecx, [ebp - 0x94]
call fcn.0044cc50
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0xe
mov ecx, dword [edi]
push eax
call fcn.00436a00
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x70]
test ecx, ecx
je 0x44ba0b
mov edx, dword [ecx]
lea eax, [ebp - 0x94]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
lea ecx, [ebp - 0x188]
call fcn.00432490
jmp 0x44c371
mov edx, str.stopBuff
mov ecx, esi
call fcn.0042bf60
test al, al
je 0x44bb58
sub esp, 8
lea ecx, [ebp - 0x304]
call fcn.00404ce0
mov edx, str.Webuff_stopped......
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0x2f4]
call fcn.00406090
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x304]
call fcn.00404bd0
mov byte [ebp - 4], 0x11
cmp dword [eax + 0x14], 0x10
jb 0x44ba6f
mov eax, dword [eax]
push eax
push 2
call fcn.004041c0
mov ecx, eax
call fcn.00404860
lea ecx, [ebp - 0x68]
call fcn.00409550
lea ecx, [ebp - 0x29c]
call fcn.00404bf0
lea eax, [ebp - 0x29c]
mov dword [ebp - 4], 0x12
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0049c747
add esp, 4
mov dword [ebp - 0x190], 0x3e8
mov ah, 0x18
mov dword [ebp - 0x20], 0x7c777b18
mov al, 0x7b
mov word [ebp - 0x1c], 0x7d
mov cl, 0x77
mov dl, 0x7c
mov bl, 0x7d
mov dword [ebp - 4], 0x13
xor al, ah
xor cl, ah
mov byte [ebp - 0x1a], al
xor dl, ah
mov byte [ebp - 0x19], cl
xor bl, ah
mov byte [ebp - 0x18], dl
lea eax, [ebp - 0x1a]
mov byte [ebp - 0x17], bl
push eax
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x16], 0
call fcn.00409ba0
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 0x14
push eax
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0xb0]
call fcn.0044cae0
add esp, 4
mov byte [ebp - 4], 0x15
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44bb32
mov edx, dword [ecx]
mov ebx, dword [ebp - 0x1a0]
push 1
push eax
push ebx
call dword [edx]
lea ecx, [ebp - 0xb0]
call fcn.00409550
lea ecx, [ebp - 0x68]
call fcn.00409550
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [edi]
call fcn.00434790
jmp 0x44c371
movaps xmm0, xmmword [str.Y:1_:2]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov al, byte [ebp + ecx - 0x47]
xor al, byte [ebp - 0x48]
mov byte [ebp + ecx - 0x38], al
mov al, byte [ebp + ecx - 0x46]
xor al, byte [ebp - 0x48]
mov byte [ebp + ecx - 0x37], al
add ecx, 2
cmp ecx, 0xe
jb 0x44bb65
lea edx, [ebp - 0x38]
mov byte [ebp - 0x2a], 0
mov ecx, esi
call fcn.0042bf60
test al, al
je 0x44bcf2
mov bh, 0x7a
mov dword [ebp - 0x24], 0x1d0d1c7a
mov al, 0x1c
mov dword [ebp - 0x20], 0x1f0a032e
mov cl, 0xd
mov byte [ebp - 0x1c], 0
mov dl, 0x1d
mov bl, 0x2e
mov ah, 3
mov ch, 0xa
mov dh, 0x1f
mov dword [ebp - 4], 0x16
xor al, bh
xor ah, bh
mov byte [ebp - 0x1b], al
xor cl, bh
mov byte [ebp - 0x17], ah
xor ch, bh
mov byte [ebp - 0x1a], cl
lea eax, [ebp - 0x1b]
mov byte [ebp - 0x16], ch
xor dl, bh
mov byte [ebp - 0x14], 0
xor dh, bh
mov byte [ebp - 0x19], dl
xor bl, bh
mov byte [ebp - 0x15], dh
push eax
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x18], bl
call fcn.00409ba0
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x194]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.0044ab60
mov byte [ebp - 4], 0x18
mov ecx, dword [edi]
push eax
add ecx, 0xf8
call fcn.0044dc10
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 4]
test eax, eax
lea ecx, [ebp - 0xb0]
setne bl
call fcn.00409550
lea ecx, [ebp - 0x68]
call fcn.00409550
movzx eax, bl
mov bh, 0x5f
mov dword [ebp - 0x190], eax
mov cl, 0x28
mov dword [ebp - 0x24], 0x3828395f
mov al, 0x39
mov dl, 0x38
mov dword [ebp - 0x20], 0x3a2f260b
mov bl, 0xb
mov byte [ebp - 0x1c], 0
mov ah, 0x26
mov ch, 0x2f
mov dh, 0x3a
mov dword [ebp - 4], 0x19
xor al, bh
xor cl, bh
mov byte [ebp - 0x1b], al
xor dl, bh
mov byte [ebp - 0x1a], cl
xor bl, bh
mov byte [ebp - 0x19], dl
xor ah, bh
mov byte [ebp - 0x18], bl
mov byte [ebp - 0x17], ah
xor ch, bh
lea eax, [ebp - 0x1b]
mov byte [ebp - 0x16], ch
xor dh, bh
mov byte [ebp - 0x14], 0
push eax
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x15], dh
call fcn.00409ba0
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 0x1a
push eax
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0xb0]
call fcn.0044cae0
add esp, 4
mov byte [ebp - 4], 0x1b
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44bcda
mov edx, dword [ecx]
mov ebx, dword [ebp - 0x1a0]
push 1
push eax
push ebx
call dword [edx]
lea ecx, [ebp - 0xb0]
call fcn.00409550
lea ecx, [ebp - 0x68]
call fcn.00409550
jmp 0x44c371
movaps xmm0, xmmword [0x50c750]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
nop
mov al, byte [ebp + ecx - 0x47]
xor al, byte [ebp - 0x48]
mov byte [ebp + ecx - 0x38], al
mov al, byte [ebp + ecx - 0x46]
xor al, byte [ebp - 0x48]
mov byte [ebp + ecx - 0x37], al
add ecx, 2
cmp ecx, 0xe
jb 0x44bd00
lea edx, [ebp - 0x38]
mov byte [ebp - 0x2a], 0
mov ecx, esi
call fcn.0042bf60
test al, al
je 0x44bd5f
mov ecx, dword [edi + 4]
lea eax, [ebp - 0x68]
push eax
call fcn.004738e0
mov dword [ebp - 4], 0x1c
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44bd52
mov edx, dword [ecx]
push 0
push eax
push ebx
call dword [edx]
lea ecx, [ebp - 0x68]
call fcn.00409550
jmp 0x44c371
mov dl, 0x74
mov dword [ebp - 0x44], 0x111374
mov dword [ebp - 0x40], 0x11191533
xor ecx, ecx
mov dword [ebp - 0x3c], 0x71d38
mov byte [ebp - 0x38], 0
nop dword [eax]
mov al, byte [ebp + ecx - 0x43]
xor al, dl
mov byte [ebp + ecx - 0x37], al
inc ecx
cmp ecx, 0xb
jae 0x44bd95
mov dl, byte [ebp - 0x44]
jmp 0x44bd80
lea edx, [ebp - 0x37]
mov byte [ebp - 0x2c], 0
mov ecx, esi
call fcn.0042bf60
test al, al
je 0x44c0d2
sub esp, 8
mov byte [ebp - 0x18a], 0
lea ecx, [ebp - 0x3b4]
mov byte [ebp - 0x189], 0
call fcn.00404ce0
mov dword [ebp - 4], 0x1d
movaps xmm0, xmmword [0x50ca60]
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x88], 0x17174d4b
mov word [ebp - 0x84], 0x17
mov byte [ebp - 4], 0x1e
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x97]
xor al, byte [ebp - 0x98]
mov byte [ebp + ecx - 0x82], al
mov al, byte [ebp + ecx - 0x96]
xor al, byte [ebp - 0x98]
mov byte [ebp + ecx - 0x81], al
mov al, byte [ebp + ecx - 0x95]
xor al, byte [ebp - 0x98]
mov byte [ebp + ecx - 0x80], al
mov al, byte [ebp + ecx - 0x94]
xor al, byte [ebp - 0x98]
mov byte [ebp + ecx - 0x7f], al
mov al, byte [ebp + ecx - 0x93]
xor al, byte [ebp - 0x98]
mov byte [ebp + ecx - 0x7e], al
add ecx, 5
cmp ecx, 0x14
jb 0x44be00
lea edx, [ebp - 0x82]
mov byte [ebp - 0x6e], 0
lea ecx, [ebp - 0x3a4]
call fcn.00406090
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x3b4]
call fcn.00404bd0
mov byte [ebp - 4], 0x1f
cmp dword [eax + 0x14], 0x10
jb 0x44be97
mov eax, dword [eax]
push eax
push 1
call fcn.004041c0
mov ecx, eax
call fcn.00404860
lea ecx, [ebp - 0x68]
call fcn.00409550
lea ecx, [ebp - 0x3b4]
call fcn.00404aa0
lea eax, [ebp - 0x94]
mov dword [ebp - 0x94], vtable.std::_Func_impl_class__lambda_7004aa5c4820fb8164684d9dee2fb35a___class_std::allocator_int___void__class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__.0
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x70], eax
lea eax, [ebp - 0x189]
mov dword [ebp - 4], 0x20
mov ecx, dword [edi + 8]
push eax
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.004551a0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x22
call fcn.0041a270
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44bf1a
mov eax, dword [ecx]
lea edx, [ebp - 0xb0]
push 0
push edx
push ebx
call dword [eax]
sub esp, 8
lea ecx, [ebp - 0x464]
call fcn.00404ce0
movaps xmm0, xmmword [0x50ca00]
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x40], 0xd0d0d
mov byte [ebp - 4], 0x24
xor ecx, ecx
mov al, byte [ebp + ecx - 0x4f]
xor al, byte [ebp - 0x50]
mov byte [ebp + ecx - 0x3c], al
mov al, byte [ebp + ecx - 0x4e]
xor al, byte [ebp - 0x50]
mov byte [ebp + ecx - 0x3b], al
mov al, byte [ebp + ecx - 0x4d]
xor al, byte [ebp - 0x50]
mov byte [ebp + ecx - 0x3a], al
mov al, byte [ebp + ecx - 0x4c]
xor al, byte [ebp - 0x50]
mov byte [ebp + ecx - 0x39], al
mov al, byte [ebp + ecx - 0x4b]
xor al, byte [ebp - 0x50]
mov byte [ebp + ecx - 0x38], al
mov al, byte [ebp + ecx - 0x4a]
xor al, byte [ebp - 0x50]
mov byte [ebp + ecx - 0x37], al
add ecx, 6
cmp ecx, 0x12
jb 0x44bf40
lea edx, [ebp - 0x3c]
mov byte [ebp - 0x2a], 0
lea ecx, [ebp - 0x454]
call fcn.00406090
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0x464]
call fcn.00404bd0
mov byte [ebp - 4], 0x25
cmp dword [eax + 0x14], 0x10
jb 0x44bfbb
mov eax, dword [eax]
push eax
push 1
call fcn.004041c0
mov ecx, eax
call fcn.00404860
lea ecx, [ebp - 0x68]
call fcn.00409550
lea ecx, [ebp - 0x464]
mov byte [ebp - 4], 0x22
call fcn.00404aa0
push str.bNeedFirstUpdate
lea ecx, [ebp - 0x68]
call fcn.00409ba0
mov eax, dword [ebp - 0x194]
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [ebp - 0x190]
push ecx
mov esi, dword [eax]
mov ecx, eax
call fcn.004129c0
lea ecx, [ebp - 0x68]
cmp dword [eax], esi
setne bl
call fcn.00409550
test bl, bl
je 0x44c04c
push str.bNeedFirstUpdate
lea ecx, [ebp - 0x68]
call fcn.00409ba0
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x194]
push eax
call fcn.0043cd00
test eax, eax
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x68]
setne bl
call fcn.00409550
jmp 0x44c052
mov bl, byte [ebp - 0x18a]
cmp byte [0x526b51], 0
je 0x44c0c2
lea edx, [ebp - 0x1a4]
mov dword [ebp - 0x1a4], edi
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x1a0], bl
call fcn.0044ccd0
mov edx, eax
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x198]
call fcn.0044cd10
mov eax, dword [ebp - 0x190]
test eax, eax
je 0x44c09e
push 8
push eax
call fcn.0049fc66
add esp, 8
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x28
call fcn.00432290
cmp dword [ebp - 0x194], 0
je 0x44c0bb
call fcn.004c6ed0
mov byte [0x526b51], 0
lea ecx, [ebp - 0xb0]
call fcn.00409550
jmp 0x44c371
movaps xmm0, xmmword [0x50c740]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
nop
mov al, byte [ebp + ecx - 0x47]
xor al, byte [ebp - 0x48]
mov byte [ebp + ecx - 0x38], al
mov al, byte [ebp + ecx - 0x46]
xor al, byte [ebp - 0x48]
mov byte [ebp + ecx - 0x37], al
add ecx, 2
cmp ecx, 0xe
jb 0x44c0e0
lea edx, [ebp - 0x38]
mov byte [ebp - 0x2a], 0
mov ecx, esi
call fcn.0042bf60
test al, al
je 0x44c18a
push str.gameid
lea ecx, [ebp - 0x68]
call fcn.00409ba0
lea eax, [ebp - 0x68]
mov dword [ebp - 4], 0x29
mov ecx, dword [ebp - 0x194]
push eax
call fcn.0043cd00
mov edx, eax
lea ecx, [ebp - 0xe0]
call fcn.0044a510
push eax
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 0x2a
mov ecx, dword [edi + 8]
push eax
call fcn.004567a0
mov byte [ebp - 4], 0x2b
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44c167
mov edx, dword [ecx]
push 0
push eax
push ebx
call dword [edx]
lea ecx, [ebp - 0xb0]
call fcn.00409550
lea ecx, [ebp - 0xe0]
call fcn.00409550
lea ecx, [ebp - 0x68]
call fcn.00409550
jmp 0x44c371
movaps xmm0, xmmword [0x50ca50]
xor ecx, ecx
movups xmmword [ebp - 0x94], xmm0
mov dword [ebp - 0x84], 0x717870
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x93]
xor al, byte [ebp - 0x94]
mov byte [ebp + ecx - 0x80], al
mov al, byte [ebp + ecx - 0x92]
xor al, byte [ebp - 0x94]
mov byte [ebp + ecx - 0x7f], al
mov al, byte [ebp + ecx - 0x91]
xor al, byte [ebp - 0x94]
mov byte [ebp + ecx - 0x7e], al
mov al, byte [ebp + ecx - 0x90]
xor al, byte [ebp - 0x94]
mov byte [ebp + ecx - 0x7d], al
mov al, byte [ebp + ecx - 0x8f]
xor al, byte [ebp - 0x94]
mov byte [ebp + ecx - 0x7c], al
mov al, byte [ebp + ecx - 0x8e]
xor al, byte [ebp - 0x94]
mov byte [ebp + ecx - 0x7b], al
add ecx, 6
cmp ecx, 0x12
jb 0x44c1b0
lea edx, [ebp - 0x80]
mov byte [ebp - 0x6e], 0
mov ecx, esi
call fcn.0042bf60
test al, al
je 0x44c265
push dword [ebp - 0x194]
mov ecx, dword [edi + 0xc]
lea eax, [ebp - 0x68]
push eax
call fcn.00465940
mov dword [ebp - 4], 0x2c
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44c258
mov edx, dword [ecx]
push 1
push eax
push ebx
call dword [edx]
lea ecx, [ebp - 0x68]
call fcn.00409550
jmp 0x44c371
mov cl, 0x64
mov dword [ebp - 0x40], 0x75646601
mov bh, 0x6c
mov dword [ebp - 0x3c], 0x6046784c
mov byte [ebp - 0x18a], bh
mov al, 0x66
xor al, byte [ebp - 0x40]
mov bh, cl
xor cl, byte [ebp - 0x40]
mov dl, 0x75
mov byte [ebp - 0x34], al
mov ch, 0x46
mov byte [ebp - 0x189], bh
mov dh, 0x60
mov al, byte [ebp - 0x189]
mov bh, 0x72
mov byte [ebp - 0x33], cl
mov bl, 0x4c
mov cl, byte [ebp - 0x40]
mov ah, 0x78
xor al, cl
mov byte [ebp - 0x199], bh
mov bh, byte [ebp - 0x18a]
xor dl, cl
xor dh, cl
mov byte [ebp - 0x2c], al
mov al, byte [ebp - 0x199]
xor ch, cl
xor bl, cl
mov byte [ebp - 0x32], dl
xor ah, cl
mov byte [ebp - 0x2f], ch
xor bh, cl
mov byte [ebp - 0x2e], dh
xor al, cl
mov dword [ebp - 0x38], 0x72646c
lea edx, [ebp - 0x34]
mov byte [ebp - 0x31], bl
mov ecx, esi
mov byte [ebp - 0x30], ah
mov byte [ebp - 0x2d], bh
mov byte [ebp - 0x2b], al
mov byte [ebp - 0x2a], 0
call fcn.0042bf60
test al, al
je 0x44c371
lea eax, [ebp - 0x94]
mov dword [ebp - 0x94], vtable.std::_Func_impl_class__lambda_797fa2bd12b6caa9a5cb7c55858f0baf___class_std::allocator_int___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____.0
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x70], eax
push eax
lea eax, [ebp - 0x40]
mov dword [ebp - 4], 0x2d
mov ecx, dword [edi + 0xc]
push eax
call fcn.00464d00
mov byte [ebp - 4], 0x2e
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x44c341
mov edx, dword [ecx]
mov ebx, dword [ebp - 0x1a0]
push 1
push eax
push ebx
call dword [edx]
lea ecx, [ebp - 0x40]
call fcn.00409550
mov dword [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x70]
test ecx, ecx
je 0x44c36b
mov edx, dword [ecx]
lea eax, [ebp - 0x94]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
inc dword [0x52e998]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049fc55
mov esp, ebp
pop ebp
ret 8