Function at 0x553940
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x671314
mov eax, dword fs:[0]
push eax
sub esp, 0x30
push esi
push edi
mov eax, dword [0x73bb00]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x14], edi
mov dword [edi + 4], 0
lea ecx, [edi + 0x40]
mov dword [ebp - 4], 0
mov dword [edi], vtable.CEditor.0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
call fcn.005419f0
mov dword [edi + 0x118], 0
mov dword [edi + 0x11c], 0
mov dword [edi + 0x120], 0
lea esi, [edi + 0x124]
mov dword [ebp - 0x1c], esi
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
sub esp, 0xc
mov byte [ebp - 4], 3
lea ecx, [esi + 0x18]
mov dword [esi], vtable.CMapView.0
mov dword [esp + 8], 0x44fa0000
mov dword [esp + 4], 0x41200000
mov dword [esp], 0x43480000
call fcn.005cd1e0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
mov dword [esi + 0x6c], 0
mov dword [esi + 0x5c], vtable.CProofMode.0
mov dword [esi + 0x78], 0
mov dword [esi + 0x7c], 0
mov dword [esi + 0x80], 0
mov dword [esi + 0x84], 0
mov dword [esi + 0x88], 0
mov dword [esi + 0x8c], 0
mov dword [esi + 0x90], 0
mov dword [esi + 0x94], 0
mov dword [esi + 0x98], 0
mov dword [esi + 0xa4], 0
mov dword [esi + 0xa8], 0
mov dword [esi + 0xac], 0
mov dword [esi + 0x9c], vtable.CMapGrid.0
mov dword [edi + 0x1f8], 0
mov dword [edi + 0x1fc], 0
mov dword [edi + 0x200], 0
mov dword [edi + method.CLayerSelector.virtual_0], vtable.CLayerSelector.0
push fcn.0042fbe0
mov byte [edi + 0x208], 0
lea eax, [edi + 0x224]
mov dword [edi + 0x20c], 0xffffffff
push 0x553870
mov dword [edi + 0x210], 0xffffffff
push 0xa
mov dword [edi + 0x214], 0xffffffff
mov dword [edi + 0x218], 0xffffffff
push 8
mov dword [edi + 0x21c], 0xffffffff
push eax
mov byte [ebp - 4], 5
mov dword [edi + 0x220], 0xffffffff
call fcn.00632cca
mov dword [edi + 0x274], 0
mov dword [edi + 0x278], 0
mov dword [edi + 0x27c], 0
lea esi, [edi + 0x280]
mov byte [ebp - 4], 7
mov dword [ebp - 0x1c], esi
push 0x18
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.006326f1
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
mov dword [edi + 0x28c], 0xffffffff
mov byte [edi + 0x290], 0
mov dword [edi + 0x294], 0
mov dword [edi + 0x298], 0
mov dword [edi + 0x29c], 0
mov dword [edi + 0x2a0], 0
mov dword [edi + 0x2a4], 0
mov dword [edi + 0x2a8], 0
mov dword [edi + 0x2ac], 0
mov dword [edi + 0x2b0], 0
mov dword [edi + 0x2b4], 0
mov dword [edi + 0x2b8], 0
mov dword [edi + 0x2bc], 0
mov dword [edi + 0x2c0], 0
mov dword [edi + 0x2c4], 0
mov word [edi + 0x2c8], 0
mov dword [edi + 0x2ca], 0
mov byte [edi + 0x2ce], 0
mov dword [edi + 0x2d8], 0
mov al, byte [0x67a95c]
push 0xff
mov byte [edi + 0x2e4], al
lea eax, [edi + 0x2e5]
push 0
push eax
mov byte [ebp - 4], 8
call fcn.00634760
add esp, 0x10
mov dword [edi + 0xa00], 0
lea esi, [edi + 0xa20]
mov byte [edi + 0xa04], 0
mov ecx, esi
mov dword [ebp - 0x1c], esi
call fcn.004883d0
push 0x200
lea eax, [esi + 0xd8]
mov byte [ebp - 4], 9
push 0x200
push eax
mov ecx, esi
mov byte [eax], 0
call fcn.0052fc80
lea esi, [edi + 0x12f8]
mov byte [ebp - 4], 0xa
mov ecx, esi
mov dword [ebp - 0x1c], esi
call fcn.004883d0
push 0x200
lea eax, [esi + 0xd8]
mov byte [ebp - 4], 0xb
push 0x200
push eax
mov ecx, esi
mov byte [eax], 0
call fcn.0052fc80
lea esi, [edi + 0x15e0]
mov byte [ebp - 4], 0xc
mov ecx, esi
mov word [edi + 0x15d8], 0
mov dword [ebp - 0x1c], esi
call fcn.004883d0
lea eax, [esi + 0xd8]
mov byte [ebp - 4], 0xd
push 0x200
mov byte [eax], 0
push 0x200
push eax
mov ecx, esi
call fcn.0052fc80
mov dword [edi + 0x18b8], 0xffffffff
mov dword [edi + 0x18c4], 0
mov dword [edi + 0x18c8], 0
mov dword [edi + 0x18cc], 0xffffffff
mov dword [edi + 0x18d0], 0
mov dword [edi + 0x18dc], 0
mov dword [edi + 0x18e0], 0
mov dword [edi + 0x18e4], 0
mov dword [edi + 0x18e8], 0
mov dword [edi + 0x18ec], 0
mov dword [edi + 0x18f0], 0
mov dword [edi + 0x18f4], 1
mov dword [edi + 0x18f8], 0
mov dword [edi + 0x18fc], 0
mov dword [edi + 0x1900], 0
mov dword [edi + 0x1904], 0
xorps xmm0, xmm0
lea ecx, [edi + 0x1918]
movups xmmword [edi + 0x1908], xmm0
mov dword [ecx], 0
mov dword [edi + 0x191c], 0xf
mov dword [ebp - 0x10], ecx
mov byte [edi + 0x1908], 0
sub esp, 0xc
mov byte [ebp - 4], 0x12
lea ecx, [edi + 0x1920]
mov dword [esp + 8], 0x44160000
mov dword [esp + 4], 0x3dcccccd
mov dword [esp], 0x3f800000
call fcn.005cd1e0
sub esp, 0xc
mov byte [ebp - 4], 0x13
lea ecx, [edi + 0x1960]
mov dword [esp + 8], 0x46fa0000
mov dword [esp + 4], 0x3dcccccd
mov dword [esp], 0x44200000
call fcn.005cd1e0
mov dword [edi + 0x1ab0], 0x3f800000
mov dword [edi + 0x1ab4], 0
mov dword [edi + 0x1ab8], 0
mov dword [edi + 0x1abc], 0
mov dword [edi + 0x1ac0], 0
mov dword [edi + 0x1ac4], 0
mov dword [edi + 0x1ac8], 0
mov dword [edi + 0x1b04], 0xffffffff
mov dword [edi + 0x1b08], 0x437a0000
mov dword [edi + 0x1b0c], 0x437a0000
mov dword [edi + 0x1b10], 0x437a0000
mov dword [edi + 0x1b14], 0x42c80000
mov dword [edi + 0x1b20], 0
mov dword [edi + 0x1b24], 0
mov dword [edi + 0x1b28], 0
mov dword [edi + 0x1b2c], 0
mov dword [edi + 0x1b30], 0
mov dword [edi + 0x1b34], 0
mov dword [edi + 0x1b4c], 0
mov dword [edi + 0x1b50], 0
mov dword [edi + 0x1b54], 0
mov dword [edi + 0x1b6c], 0
lea eax, [edi + 0x1ba4]
mov dword [edi + 0x1b70], 0
mov ecx, 8
mov dword [edi + 0x1b74], 0
mov dword [edi + 0x1b78], 0
mov dword [ebp - 0x1c], eax
nop word [eax + eax]
mov dword [eax], 0
lea eax, [eax + 0x10]
mov dword [eax - 0xc], 0
mov dword [eax - 8], 0
mov dword [eax - 4], 0
sub ecx, 1
jne 0x553f60
mov dword [edi + 0x1c24], 0x3f800000
mov dword [edi + 0x1c28], 0x3f800000
mov dword [edi + 0x1c2c], 0x3f800000
mov dword [edi + 0x1c30], 0x3f800000
mov byte [edi + 0x1c34], cl
mov dword [edi + 0x1c38], 0xffffffff
mov dword [edi + 0x1c3c], 0xffffffff
mov dword [edi + 0x1c40], 0xffffffff
mov dword [edi + 0x1c44], 0xffffffff
mov dword [edi + 0x1c48], 0xffffffff
mov dword [edi + 0x1c50], ecx
mov dword [edi + 0x1c54], ecx
mov dword [edi + 0x1c58], ecx
mov dword [edi + 0x1c5c], ecx
mov dword [edi + 0x1c60], ecx
mov dword [edi + 0x1c64], ecx
lea ecx, [edi + 0x1c68]
mov byte [ebp - 4], 0x1a
call fcn.00554930
lea esi, [edi + 0x1e90]
mov byte [ebp - 4], 0x1b
push 8
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
call fcn.006326f1
add esp, 4
mov dword [eax + 4], 0
mov dword [esi], eax
mov dword [eax], esi
lea esi, [edi + 0x1ea8]
mov byte [ebp - 4], 0x1c
mov ecx, esi
mov dword [ebp - 0x18], esi
call fcn.004883d0
push 0x100
lea eax, [esi + 0xd8]
mov byte [ebp - 4], 0x1d
push 0x100
push eax
mov ecx, esi
mov byte [eax], 0
call fcn.0052fc80
add edi, 0x2080
mov dword [ebp - 0x18], edi
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
lea esi, [edi + 0x14]
mov dword [edi], vtable.CMapSettingsBackend.0
mov dword [ebp - 0x20], esi
push 0x30
mov byte [ebp - 4], 0x1f
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.006326f1
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 0
lea esi, [edi + 0x28]
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x20], esi
mov dword [esi], 0
mov dword [esi + 4], 0
push 0x24
call fcn.006326f1
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 0x22
mov dword [ebp - 0x20], esi
push 0x30
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.006326f1
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
lea esi, [edi + 0x38]
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x20], esi
push 0x2c
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.006326f1
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
lea eax, [edi + 0x40]
mov dword [ebp - 0x20], eax
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
lea esi, [eax + 0x18]
mov byte [ebp - 4], 0x26
mov dword [ebp - 0x28], esi
push 0x20
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.006326f1
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
mov edi, dword [ebp - 0x14]
add edi, 0x20e0
mov byte [ebp - 4], 0x27
push 0x154
push 0
mov dword [ebp - 0x28], edi
lea esi, [edi + 4]
push esi
call fcn.00634760
add esp, 0x20
mov byte [esi], 0
lea ecx, [esi + 8]
mov dword [esi + 4], 0xffffffff
call fcn.00549da0
mov dword [esi + 0x14c], 0
mov dword [esi + 0x150], 0
mov dword [edi + 0x15c], 0
mov dword [edi + 0x160], 0
mov dword [edi + 0x164], 0
mov dword [edi + 0x168], 0
mov dword [edi + 0x16c], 0
mov dword [edi + 0x174], 0
mov dword [edi + 0x178], 0
mov dword [edi + 0x17c], 0
mov ecx, dword [ebp - 0x14]
xorps xmm0, xmm0
lea eax, [ecx + 0x1ea8]
mov dword [edi + 0x184], eax
lea eax, [ecx + 0x2080]
mov dword [edi + 0x314], eax
movups xmmword [edi + 0x318], xmm0
mov dword [edi + 0x328], 0
mov dword [edi + 0x32c], 0xf
mov byte [edi + 0x318], 0
mov ecx, edi
mov byte [ebp - 4], 0x2b
mov byte [edi], 0
call fcn.0059eed0
mov edi, dword [ebp - 0x14]
mov byte [ebp - 4], 0x2c
lea ecx, [edi + 0x2630]
mov dword [edi + 0x2414], 0
mov dword [edi + 0x2418], 0
mov dword [edi + 0x241c], 0xffffffff
mov dword [edi + 0x2420], 0
call fcn.00554850
lea ecx, [edi + 0x266c]
mov byte [ebp - 4], 0x2d
call fcn.00554850
lea ecx, [edi + 0x26a8]
mov byte [ebp - 4], 0x2e
call fcn.00554850
lea ecx, [edi + 0x26e4]
mov byte [ebp - 4], 0x2f
call fcn.005a0250
lea eax, [edi + 0x2734]
mov byte [ebp - 4], 0x30
mov dword [ebp - 0x28], eax
lea esi, [eax + 8]
mov dword [eax + 4], 0
mov dword [ebp - 0x28], esi
push 0x24
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.006326f1
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
lea esi, [edi + 0x2744]
mov byte [ebp - 4], 0x31
mov dword [ebp - 0x28], esi
push 0x3c
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.006326f1
add esp, 8
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
mov dword [edi + 0x20c], 0xffffffff
mov dword [edi + 0x210], 0xffffffff
mov dword [edi + 0x214], 0xffffffff
mov dword [edi + 0x218], 0xffffffff
mov dword [edi + 0x21c], 0xffffffff
mov dword [edi + 0x220], 0xffffffff
mov dword [edi + 0x2dc], 0
mov dword [edi + 0x2e0], 0
mov word [edi + 0x3e4], 1
mov byte [ebp - 4], 0x32
mov byte [edi + 0x5e5], 0
mov byte [edi + 0x7e5], 0
lea eax, [edi + 0xcf8]
mov byte [edi + 0x9e5], 0
lea esi, [edi + 0x1908]
mov dword [edi + 0x9ec], 0
mov dword [edi + 0x9f0], 0
mov dword [edi + 0xa08], 0
mov dword [edi + 0xa0c], 0
mov dword [edi + 0xa10], 0
mov dword [edi + 0xa14], 0
mov dword [edi + 0xa1c], 0
mov byte [eax], 0
mov byte [edi + 0xef8], 0
mov byte [edi + 0x10f8], 0
mov dword [edi + 0x15d0], eax
mov byte [edi + 0x18d4], 0
mov dword [edi + 0x15dc], 0xffffffff
mov dword [edi + 0x18b8], 0xffffffff
mov dword [edi + 0x18bc], 0xffffffff
mov dword [edi + 0x18c0], 0
mov dword [edi + 0x18d8], 0xffffffff
mov edx, dword [esi + 0x14]
cmp edx, 5
jb 0x5544da
cmp edx, 0xf
jbe 0x5544bb
mov esi, dword [esi]
mov ecx, dword [ebp - 0x10]
push 5
push str.DDNet
push esi
mov dword [ecx], 5
call fcn.006341e0
add esp, 0xc
mov byte [esi + 5], 0
jmp 0x554533
mov ecx, edx
mov eax, bind
shr ecx, 1
sub eax, ecx
cmp edx, eax
jbe 0x5544f0
mov ecx, bind
jmp 0x5544fd
lea eax, [ecx + edx]
mov ecx, 0xf
cmp eax, ecx
cmova ecx, eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], ecx
push eax
push esi
call fcn.004169c0
mov ecx, dword [ebp - 0x10]
add esp, 8
mov dword [ecx], 5
mov ecx, dword [ebp - 0x18]
mov dword [esi + 0x14], ecx
mov ecx, dword [str.DDNet]
mov dword [eax], ecx
mov cl, byte [0x67e6cc]
mov byte [eax + 4], cl
mov byte [eax + 5], 0
mov dword [esi], eax
xor eax, eax
mov byte [edi + 0x19a0], 1
sar eax, 3
lea ecx, [edi + 0x1b4c]
push eax
push 0
mov dword [edi + 0x19a4], 0x3dcccccd
mov dword [edi + 0x19a8], 0x3f000000
mov word [edi + 0x19ac], 0x101
mov dword [edi + 0x1acc], 0
mov dword [edi + 0x1ad0], 0
mov dword [edi + 0x1ad4], 0
mov dword [edi + 0x1ad8], 0
mov byte [edi + 0x1aae], 0
mov dword [edi + 0x1ae8], 0
mov word [edi + 0x1aec], 1
mov dword [edi + 0x1af0], 0
mov dword [edi + 0x1af4], 0
mov dword [edi + 0x1af8], 0
mov dword [edi + 0x1afc], 0x3f800000
mov byte [edi + 0x1b00], 0
mov dword [edi + 0x1b18], 0
mov dword [edi + 0x1b58], 0xffffffff
mov dword [ebp - 0x2c], 0
call fcn.0054f1d0
movss xmm1, dword [0x67b0b4]
xorps xmm0, xmm0
mov word [edi + 0x1b7c], 0
xor esi, esi
mov dword [edi + 0x1b6c], 0xffffffff
mov dword [edi + 0x1b70], 0xffffffff
mov dword [edi + 0x1b74], 0xffffffff
mov dword [edi + 0x1b78], 0xffffffff
mov dword [edi + 0x1b5c], 0xffffffff
mov dword [edi + 0x1b80], 0
movups xmmword [edi + 0x1b84], xmm0
mov dword [ebp - 0x30], 0x3f800000
movups xmmword [edi + 0x1b94], xmm0
mov edi, dword [ebp - 0x1c]
andps xmm0, xmmword [0x67ed80]
subss xmm1, xmm0
fld qword [0x67ed40]
cvtps2pd xmm0, xmm1
movss dword [ebp - 0x10], xmm1
movsd qword [ebp - 0x24], xmm0
movaps xmm0, xmm1
movss xmm1, dword [0x67b0b0]
mulss xmm0, xmm1
subss xmm1, xmm0
movss dword [ebp - 0x18], xmm1
xorps xmm0, xmm0
mov eax, esi
cvtsi2sd xmm0, esi
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x67b110]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [0x6addc8]
mulss xmm0, dword [0x67ed4c]
movss dword [ebp - 0x1c], xmm0
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x2c], xmm0
fld qword [ebp - 0x2c]
fxch st(1)
call fcn.006431f0
movsd xmm0, qword [0x67b0b8]
xorps xmm2, xmm2
cvttss2si eax, dword [ebp - 0x1c]
fstp qword [ebp - 0x2c]
movsd xmm1, qword [ebp - 0x2c]
subsd xmm1, xmm0
andps xmm1, xmmword [0x67ed90]
subsd xmm0, xmm1
xorps xmm1, xmm1
mulsd xmm0, qword [ebp - 0x24]
cvtpd2ps xmm0, xmm0
cmp eax, 6
ja case.default.0x55470e
jmp dword [eax*4 + 0x554830]
movss xmm1, dword [ebp - 0x10]
movaps xmm4, xmm0
jmp 0x554752
movss xmm4, dword [ebp - 0x10]
movaps xmm1, xmm0
jmp 0x554752
movss xmm4, dword [ebp - 0x10]
movaps xmm2, xmm0
jmp 0x554752
movss xmm2, dword [ebp - 0x10]
movaps xmm4, xmm0
jmp 0x554752
movss xmm2, dword [ebp - 0x10]
movaps xmm1, xmm0
jmp case.default.0x55470e
movss xmm1, dword [ebp - 0x10]
movaps xmm2, xmm0
xorps xmm4, xmm4
movss xmm3, dword [ebp - 0x18]
inc esi
movaps xmm0, xmm3
fld qword [0x67ed40]
addss xmm0, xmm1
movss dword [ebp - 0x3c], xmm0
movaps xmm0, xmm3
addss xmm0, xmm4
movss dword [ebp - 0x38], xmm0
movaps xmm0, xmm3
addss xmm0, xmm2
movss dword [ebp - 0x34], xmm0
movups xmm0, xmmword [ebp - 0x3c]
movups xmmword [edi], xmm0
add edi, 0x10
cmp esi, 8
jb 0x554696
mov edi, dword [ebp - 0x14]
fstp st(0)
mov eax, edi
mov dword [edi + 0x1c38], 0xffffffff
mov dword [edi + 0x1c3c], 0xffffffff
mov dword [edi + 0x1c40], 0xffffffff
mov dword [edi + 0x1c44], 0xffffffff
mov dword [edi + 0x1c48], 0xffffffff
mov dword [edi + 0x1c4c], 0
mov dword [0x7728ac], 0
mov word [edi + 0x2624], 0x101
mov dword [edi + 0x262a], 0x10000
mov word [edi + 0x2627], 0x3201
mov byte [edi + 0x2629], 0
mov word [edi + 0x9f4], 0
mov dword [edi + 0x9f8], 0
mov byte [edi + 0x9fc], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret