Function at 0x42cd30
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4d7e66
mov eax, dword fs:[0]
push eax
sub esp, 0x1d4
mov eax, dword [0x51df40]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x194], edi
mov dword [ebp - 0x1bc], 0
mov dword [ebp - 0x1b8], 0
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x1b0], 0
push 0xc8
lea eax, [ebp - 0x1bc]
mov dword [ebp - 4], 0
lea ecx, [edi + 0x200]
push eax
call fcn.0042eaa0
mov al, byte [edi + 0x33a]
lea ecx, [edi + 0x33a]
nop
test al, al
je 0x42cddc
cmp dword [edi + 0x1fc], 0
je 0x42cddc
xor al, al
xchg byte [ecx], al
mov ecx, dword [edi + 0x1fc]
test ecx, ecx
je 0x42d6af
mov eax, dword [ecx]
call dword [eax + 8]
movzx eax, byte [ebp - 0x1bc]
add eax, 0xfffffff3
cmp eax, 0xa8
ja case.0x42cdf8.15
movzx eax, byte [eax + 0x42d6f8]
jmp dword [eax*4 + 0x42d6e4]
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
lea esi, [edi + 0x2f0]
movups xmmword [ebp - 0x28], xmm0
push eax
mov ecx, esi
mov byte [ebp - 0x28], 0
call fcn.0042a7e0
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x42ce5d
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42ce53
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42d684
push ecx
push edx
call fcn.004d42b1
add esp, 8
mov ecx, dword [esi + 0x10]
cmp ecx, 2
jb 0x42ce7c
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x42ce6f
mov eax, dword [esi]
mov dword [esi + 0x10], 2
mov byte [eax + 2], 0
jmp 0x42ce8d
mov eax, 2
sub eax, ecx
mov ecx, esi
push 0
push eax
call fcn.0040cf10
cmp dword [esi + 0x14], 0xf
lea ecx, [esi + 0x14]
jbe 0x42ce98
mov esi, dword [esi]
mov eax, dword [ebp - 0x1b8]
add edi, 0x2f0
mov ax, word [eax]
mov word [esi], ax
cmp dword [ecx], 0xf
mov eax, dword [0x5209ac]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x194], eax
jbe 0x42cec0
mov edi, dword [edi]
push edi
push str.Received_country_code__s
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov dword [ebp - 0x1c8], esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 5
mov dword [ecx + 0x14], 0xf
mov eax, dword [str.cspot]
mov dword [ecx], eax
mov al, byte [0x4dd990]
mov byte [ecx + 4], al
mov byte [ecx + 5], 0
push 0x99
sub esp, 0x18
mov byte [ebp - 4], 1
mov esi, esp
mov dword [ebp - 0x18c], 0x5f
lea eax, [ebp - 0x18c]
push eax
movups xmmword [esi], xmm0
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
call fcn.004092c0
mov ecx, dword [ebp - 0x18c]
add esp, 8
mov dword [esi], eax
mov dword [esi + 0x10], 0x58
mov dword [esi + 0x14], ecx
movups xmm0, xmmword [str.D:UsersphiliDropboxDevelopmentSpotConnectcommoncspotcspot_srcMercurySession.cpp]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x4e0938]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x4e0948]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [0x4e0958]
movups xmmword [eax + 0x30], xmm0
movups xmm0, xmmword [0x4e0968]
movups xmmword [eax + 0x40], xmm0
movq xmm0, qword [0x4e0978]
movq qword [eax + 0x50], xmm0
mov byte [eax + 0x58], 0
push dword [0x5209ac]
mov byte [ebp - 4], 0
call dword [ebp - 0x194]
add esp, 0x40
jmp case.0x42cdf8.15
mov eax, dword [ebp - 0x1b8]
push dword [eax]
call dword [sym.imp.WS2_32.dll_ntohl]
movzx ecx, al
add edi, 0x2b0
xor ecx, 0x811c9dc5
mov dword [ebp - 0x194], eax
mov esi, dword [ebp - 0x194]
imul edx, ecx, 0x1000193
mov ecx, eax
mov dword [ebp - 0x18c], eax
shr ecx, 8
movzx eax, cl
xor edx, eax
mov eax, esi
shr eax, 0x10
movzx eax, al
imul ecx, edx, 0x1000193
xor ecx, eax
mov eax, esi
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp - 0x194], eax
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x1ac]
push eax
call fcn.00428b20
cmp dword [eax + 4], 0
je case.0x42cdf8.15
cmp byte [ebp - 0x1bc], 0xd
lea eax, [ebp - 0x18c]
mov dword [ebp - 0x18c], esi
mov ecx, edi
mov esi, dword [ebp - 0x194]
sete byte [ebp - 0x190]
push esi
push eax
lea eax, [ebp - 0x19c]
push eax
call fcn.00428b20
mov eax, dword [ebp - 0x198]
test eax, eax
jne 0x42d136
cmp dword [edi + 8], 0x4924924
je 0x42d6b4
lea eax, [edi + 4]
mov dword [ebp - 0x1c4], eax
push 0x38
mov byte [ebp - 4], 2
mov dword [ebp - 0x1c0], 0
call fcn.004d4281
mov ecx, dword [ebp - 0x18c]
add esp, 4
mov dword [ebp - 0x1c0], eax
add eax, 8
mov dword [ebp - 0x194], eax
mov dword [eax], ecx
mov dword [eax + 0x2c], 0
mov eax, dword [edi + 8]
inc eax
mov byte [ebp - 4], 3
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4df6d0]
mov eax, dword [edi + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4df6d0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [edi]
seta al
test al, al
je 0x42d11d
mov ecx, edi
call fcn.0042b470
push esi
push dword [ebp - 0x194]
lea eax, [ebp - 0x1a4]
mov ecx, edi
push eax
call fcn.00428b20
mov ecx, dword [eax]
jmp 0x42d123
mov ecx, dword [ebp - 0x19c]
push dword [ebp - 0x1c0]
push ecx
push esi
mov ecx, edi
call fcn.0042b410
mov byte [ebp - 4], 0
mov cl, byte [ebp - 0x190]
mov byte [ebp - 0x190], cl
mov ecx, dword [eax + 0x34]
test ecx, ecx
je 0x42d6be
mov eax, dword [ecx]
lea edx, [ebp - 0x1b8]
push edx
lea edx, [ebp - 0x190]
push edx
call dword [eax + 8]
jmp case.0x42cdf8.15
mov eax, dword [0x5209ac]
xorps xmm0, xmm0
push str.Received_mercury_packet
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1c8], esp
mov eax, dword [eax]
movups xmmword [ecx], xmm0
mov edi, dword [eax]
mov dword [ecx + 0x10], 5
mov dword [ecx + 0x14], 0xf
mov eax, dword [str.cspot]
mov dword [ecx], eax
mov al, byte [0x4dd990]
mov byte [ecx + 4], al
mov byte [ecx + 5], 0
push 0xae
sub esp, 0x18
mov byte [ebp - 4], 4
mov esi, esp
mov dword [ebp - 0x18c], 0x5f
lea eax, [ebp - 0x18c]
push eax
movups xmmword [esi], xmm0
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
call fcn.004092c0
mov ecx, dword [ebp - 0x18c]
add esp, 8
mov dword [esi], eax
mov dword [esi + 0x10], 0x58
mov dword [esi + 0x14], ecx
movups xmm0, xmmword [str.D:UsersphiliDropboxDevelopmentSpotConnectcommoncspotcspot_srcMercurySession.cpp]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x4e0938]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x4e0948]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [0x4e0958]
movups xmmword [eax + 0x30], xmm0
movups xmm0, xmmword [0x4e0968]
movups xmmword [eax + 0x40], xmm0
movq xmm0, qword [0x4e0978]
movq qword [eax + 0x50], xmm0
mov byte [eax + 0x58], 0
push dword [0x5209ac]
mov byte [ebp - 4], 0
call edi
mov esi, dword [ebp - 0x194]
lea eax, [ebp - 0x1b8]
add esp, 0x3c
mov ecx, esi
push eax
lea eax, [ebp - 0x188]
push eax
call fcn.0042bc00
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 5
lea edi, [esi + 0x270]
push eax
mov ecx, edi
call fcn.004284e0
push eax
mov dword [ebp - 0x18c], eax
mov ecx, edi
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x1e0]
push eax
call fcn.00428c90
cmp dword [eax + 4], 0
je 0x42d650
mov eax, dword [ebp - 0x38]
push dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x1ac], eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x1a4]
mov dword [ebp - 0x1a8], ecx
push eax
mov ecx, edi
call fcn.00428c90
mov eax, dword [ebp - 0x1a0]
test eax, eax
jne 0x42d3a8
cmp dword [edi + 8], 0x4924924
je 0x42d6c3
lea eax, [edi + 4]
mov dword [ebp - 0x19c], eax
push 0x38
mov byte [ebp - 4], 6
mov dword [ebp - 0x198], 0
call fcn.004d4281
mov ecx, dword [ebp - 0x38]
add esp, 4
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x198], eax
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov dword [eax + 0x34], 0
mov eax, dword [edi + 8]
inc eax
mov byte [ebp - 4], 7
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4df6d0]
mov eax, dword [edi + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4df6d0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [edi]
seta al
test al, al
je 0x42d38a
mov ecx, edi
call fcn.0042b620
push dword [ebp - 0x18c]
mov eax, dword [ebp - 0x198]
mov ecx, edi
add eax, 8
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.00428c90
mov ecx, dword [eax]
jmp 0x42d390
mov ecx, dword [ebp - 0x1a4]
push dword [ebp - 0x198]
push ecx
push dword [ebp - 0x18c]
mov ecx, edi
call fcn.0042b410
mov byte [ebp - 4], 5
mov ecx, dword [eax + 0x34]
test ecx, ecx
je 0x42d6cd
mov eax, dword [ecx]
lea edx, [ebp - 0x188]
push edx
call dword [eax + 8]
lea eax, [ebp - 0x1ac]
push eax
lea ecx, [esi + 0x270]
call fcn.004284e0
push eax
lea eax, [ebp - 0x1ac]
push eax
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [esi + 0x270]
call fcn.00428c90
mov eax, dword [eax + 4]
test eax, eax
jne 0x42d3f8
mov eax, dword [esi + 0x274]
push eax
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [esi + 0x270]
call fcn.004296b0
jmp 0x42d650
lea eax, [ebp - 0x1b8]
mov ecx, edi
push eax
lea eax, [ebp - 0x188]
push eax
call fcn.0042bc00
xorps xmm0, xmm0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x187]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42d447
sub ecx, edx
lea eax, [ebp - 0x187]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00409320
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
mov ecx, dword [ebp - 0x18]
mov esi, 0x811c9dc5
cmova eax, dword [ebp - 0x28]
xor edx, edx
mov byte [ebp - 4], 9
test ecx, ecx
je 0x42d497
mov edi, eax
nop
movzx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x42d480
mov edi, dword [ebp - 0x194]
push esi
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [edi + 0x290]
call fcn.00428b90
cmp dword [eax + 4], 0
je 0x42d606
mov edx, dword [ebp - 0x18]
lea eax, [ebp - 0x28]
add edi, 0x290
mov esi, 0x811c9dc5
cmp dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18c], edi
cmova eax, dword [ebp - 0x28]
xor ecx, ecx
test edx, edx
je 0x42d4f7
mov edi, eax
nop
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, edx
jb 0x42d4e0
mov edi, dword [ebp - 0x18c]
push esi
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
lea eax, [ebp - 0x1ac]
push eax
call fcn.00428b90
mov eax, dword [ebp - 0x1a8]
test eax, eax
jne 0x42d5ef
cmp dword [edi + 8], 0x38e38e3
je 0x42d6d2
lea eax, [edi + 4]
mov dword [ebp - 0x1a4], eax
push 0x48
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x1a0], 0
call fcn.004d4281
add esp, 4
mov dword [ebp - 0x1a0], eax
add eax, 8
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x194], eax
push ecx
mov ecx, eax
call fcn.0040add0
mov eax, dword [ebp - 0x194]
mov dword [eax + 0x3c], 0
mov eax, dword [edi + 8]
inc eax
mov byte [ebp - 4], 0xb
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4df6d0]
mov eax, dword [edi + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x4df6d0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [edi]
seta al
test al, al
je 0x42d5d6
mov ecx, edi
call fcn.0042b500
push esi
push dword [ebp - 0x194]
lea eax, [ebp - 0x1d0]
mov ecx, edi
push eax
call fcn.00428b90
mov ecx, dword [eax]
jmp 0x42d5dc
mov ecx, dword [ebp - 0x1ac]
push dword [ebp - 0x1a0]
push ecx
push esi
mov ecx, edi
call fcn.0042b410
mov byte [ebp - 4], 9
mov ecx, dword [eax + 0x44]
test ecx, ecx
je 0x42d6dc
mov eax, dword [ecx]
lea edx, [ebp - 0x188]
push edx
call dword [eax + 8]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x28]
cmp eax, 0xf
jbe 0x42d63e
lea edx, [eax + 1]
mov eax, ecx
cmp edx, 0x1000
jb 0x42d634
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x42d634
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004d42b1
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea ecx, [ebp - 0x44]
call fcn.00418430
mov ecx, dword [ebp - 0x1b8]
test ecx, ecx
je 0x42d694
mov edx, dword [ebp - 0x1b0]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x42d68a
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x42d68a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004d42b1
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004d3ed5
mov esp, ebp
pop ebp
ret
call sub.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_
push str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
call sub.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_
push str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
call sub.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_
push str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
call sub.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_
nop dword [eax]
mov byte [0xff0042cf], al
int 66
add byte [ebp - 0x2f], ah
inc edx
add byte [eax], dl
aam 0x42
add byte [eax - 0x2a], bl
inc edx
add byte [eax], al
add byte [esp + eax], al
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add dword [esp + eax], eax
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, byte [edx]
add al, byte [ebx]
int3