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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x507f8e
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x168
mov eax, dword [0x55b18c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, edx
mov dword [ebp - 0x18], ecx
mov esi, dword [ebx + 8]
lea eax, [ebp - 0x144]
push 0xa8
push 0
push eax
call fcn.004db730
add esp, 0xc
lea ecx, [ebp - 0x144]
call fcn.0042ace0
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
push 0
push 1
push esi
push edi
mov byte [ebp - 4], 1
lea eax, [ebp - 0x34]
push dword [ebp - 0x18]
lea ecx, [ebp - 0x144]
push eax
push str.getstatus
call fcn.0042cce0
cmp dword [ebp - 0x20], 0x10
lea ecx, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
cmovae ecx, edx
mov dword [ebp - 0x150], ecx
cmp eax, 0xe
jb 0x4b5202
add eax, 0xfffffff3
add eax, ecx
sub eax, ecx
push eax
push 0x73
push ecx
call fcn.004dcf90
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4b51ff
nop word [eax + eax]
mov ecx, edi
mov edx, str.statusResponse
mov esi, 0xa
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4b47e1
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4b47d0
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4b4808
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4b4808
cmp esi, 0xfffffffe
je 0x4b4804
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4b4808
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4b4808
xor eax, eax
jmp 0x4b480d
sbb eax, eax
or eax, 1
test eax, eax
je 0x4b4839
mov edx, dword [ebp - 0x24]
inc edi
mov eax, dword [ebp - 0x150]
add edx, 0xfffffff3
add eax, edx
sub eax, edi
push eax
push 0x73
push edi
call fcn.004dcf90
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x4b47c0
jmp 0x4b51ff
sub edi, dword [ebp - 0x150]
cmp edi, 0xffffffff
je 0x4b51ff
cmp dword [ebp - 0x20], 0x10
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
cmovae eax, edx
cmp byte [eax + 4], 0x73
jne 0x4b5202
cmp dword [ebp - 0x20], 0x10
lea esi, [ebp - 0x34]
push 0xa
cmovae esi, edx
add esi, 0x14
push esi
call fcn.004dac30
add esp, 4
mov dword [ebp - 0x1c], esi
mov edi, eax
mov dword [ebp - 0x7c], 0
mov ecx, edi
mov dword [ebp - 0x160], edi
sub ecx, esi
lea edx, [ebp - 0x1c]
push 0
sub esp, 8
mov dword [ebp - 0x18], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x84]
movq qword [ebp - 0x84], xmm0
push 0x533354
call fcn.0042f220
add esp, 0x14
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x80]
mov ecx, eax
mov esi, dword [ebp - 0x84]
sub ecx, esi
mov dword [ebp - 0x18], eax
mov eax, 0x2aaaaaab
imul ecx
mov dword [ebp - 0x164], esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x4b499e
mov edi, 1
add esi, 0x18
sub esp, 0x18
xorps xmm0, xmm0
mov eax, esp
sub esp, 0x18
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
movups xmm0, xmmword [esi]
movups xmmword [eax], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [eax + 0x10], xmm0
mov eax, esp
mov dword [esi + 0x10], 0
xorps xmm0, xmm0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
movups xmm0, xmmword [esi - 0x18]
movups xmmword [eax], xmm0
movq xmm0, qword [esi - 8]
movq qword [eax + 0x10], xmm0
mov dword [esi - 8], 0
mov dword [esi - 4], 0xf
mov byte [esi - 0x18], 0
call fcn.004a8650
mov ecx, dword [ebp - 0x18]
lea esi, [esi + 0x30]
sub ecx, dword [ebp - 0x164]
mov eax, 0x2aaaaaab
imul ecx
add edi, 2
add esp, 0x30
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x4b48f2
mov edi, dword [ebp - 0x160]
cmp dword [ebp - 0x20], 0x10
lea eax, [ebp - 0x34]
xorps xmm0, xmm0
cmovae eax, dword [ebp - 0x34]
movups xmmword [ebp - 0x78], xmm0
push 0x24
sub edi, eax
mov dword [ebp - 0x78], 0
movups xmmword [ebp - 0x68], xmm0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
call fcn.004d2193
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x6c]
push eax
push 0x10
mov dword [ebp - 0x60], 7
mov dword [ebp - 0x5c], 8
mov dword [ebp - 0x78], 0x3f800000
call fcn.0042de30
mov byte [ebp - 4], 5
inc edi
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x150], eax
cmp edi, eax
jae 0x4b4cde
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x14c], 0
nop dword [eax]
cmp ecx, 0x10
setae byte [ebp - 0x145]
nop word [eax + eax]
cmp ecx, 0x10
lea eax, [ebp - 0x34]
cmovae eax, edx
cmp byte [eax + edi], 0x20
jne 0x4b4a62
inc edi
jmp 0x4b4a50
mov cl, byte [ebp - 0x145]
mov esi, edi
nop word [eax + eax]
test cl, cl
lea eax, [ebp - 0x34]
cmovne eax, edx
cmp byte [eax + esi], 0x20
je 0x4b4a81
inc esi
jmp 0x4b4a70
mov eax, dword [ebp - 0x150]
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0
movups xmmword [ebp - 0x9c], xmm0
cmp eax, edi
jb 0x4b52b2
sub eax, edi
mov ecx, esi
sub ecx, edi
cmp eax, ecx
cmovb ecx, eax
cmp byte [ebp - 0x145], 0
lea eax, [ebp - 0x34]
cmovne eax, edx
push ecx
add eax, edi
lea ecx, [ebp - 0x9c]
push eax
call fcn.00417660
mov edx, str.__t_n_f_v_r
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042f610
lea edx, [ebp - 0x154]
lea ecx, [ebp - 0x9c]
call fcn.0048a6a0
mov edi, dword [ebp - 0x20]
xor ecx, ecx
test al, al
mov eax, dword [ebp - 0x154]
cmove eax, ecx
mov ecx, dword [ebp - 0x34]
cmp edi, 0x10
mov dword [ebp - 0x154], eax
setae byte [ebp - 0x145]
nop dword [eax]
cmp edi, 0x10
lea eax, [ebp - 0x34]
lea edx, [esi + 1]
cmovae eax, ecx
cmp byte [eax + esi], 0x22
je 0x4b4b36
mov esi, edx
jmp 0x4b4b20
mov edi, edx
nop dword [eax + eax]
cmp byte [ebp - 0x145], 0
lea eax, [ebp - 0x34]
cmovne eax, ecx
cmp byte [eax + edi], 0x22
je 0x4b4b56
inc edi
jmp 0x4b4b40
mov eax, dword [ebp - 0x24]
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
movups xmmword [ebp - 0x58], xmm0
cmp eax, edx
jb 0x4b52b2
sub eax, edx
mov ecx, edi
sub ecx, edx
cmp eax, ecx
cmovb ecx, eax
cmp byte [ebp - 0x145], 0
lea eax, [ebp - 0x34]
cmovne eax, dword [ebp - 0x34]
push ecx
add eax, edx
lea ecx, [ebp - 0x58]
push eax
call fcn.00417660
mov edx, str.__t_n_f_v_r
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x58]
call fcn.0042f610
mov edx, dword [ebp - 0x14c]
mov esi, dword [0x568afc]
add edx, 0xc
add edx, esi
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x18], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4b4bc5
sub ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x58]
cmp dword [ebp - 0x44], 0x10
push ecx
cmovae eax, dword [ebp - 0x58]
push edx
push dword [ebp - 0x48]
push eax
call fcn.00419ee0
add esp, 0x10
test al, al
je 0x4b4bfc
mov ecx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x154]
mov dword [ecx + esi + 4], eax
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x16c]
push eax
lea ecx, [ebp - 0x78]
call fcn.0042fb80
add dword [ebp - 0x14c], 0xd8
inc edi
mov eax, dword [eax]
inc dword [eax + 0x20]
lea eax, [ebp - 0x34]
mov ecx, dword [ebp - 0x20]
cmp ecx, 0x10
mov edx, dword [ebp - 0x34]
cmovae eax, edx
cmp byte [eax + edi], 0xa
jne 0x4b4c35
inc edi
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x44]
cmp eax, 0x10
jb 0x4b4c75
mov edx, dword [ebp - 0x58]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x4b4c65
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4b52b7
push ecx
push edx
call fcn.004d25e8
mov ecx, dword [ebp - 0x20]
add esp, 8
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp eax, 0x10
jb 0x4b4ccd
mov edx, dword [ebp - 0x9c]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x4b4cbd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4b52b7
push ecx
push edx
call fcn.004d25e8
mov ecx, dword [ebp - 0x20]
add esp, 8
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x150], eax
cmp edi, eax
jb 0x4b4a40
xor ecx, ecx
mov dword [ebp - 0x38], 0
xorps xmm0, xmm0
mov dword [ebp - 0x38], ecx
movq qword [ebp - 0x40], xmm0
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], ecx
xor eax, eax
mov byte [ebp - 4], 8
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x154], eax
cmp dword [0x568ed0], eax
jbe 0x4b4f07
xor esi, esi
nop dword [eax + eax]
imul edx, esi, 0xd8
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
add edx, 0xc
add edx, dword [0x568afc]
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4b4d50
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x58]
call fcn.00417660
mov byte [ebp - 4], 9
lea esi, [ebp - 0x58]
mov eax, dword [ebp - 0x44]
mov edx, 0x811c9dc5
mov edi, dword [ebp - 0x48]
cmp eax, 0x10
mov dword [ebp - 0x150], eax
cmovae esi, dword [ebp - 0x58]
xor ecx, ecx
test edi, edi
je 0x4b4d99
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x4b4d88
push edx
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x16c]
push eax
lea ecx, [ebp - 0x78]
call fcn.00430b60
mov edx, dword [ebp - 0x74]
mov eax, dword [eax + 4]
test eax, eax
cmovne edx, eax
mov dword [ebp - 0x164], edx
cmp edx, dword [ebp - 0x74]
je 0x4b4e5a
dec dword [edx + 0x20]
cmp dword [edx + 0x20], 0
jg 0x4b4e52
cmp dword [edx + 0x1c], 0x10
lea edi, [edx + 8]
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x18], eax
jb 0x4b4de5
mov edi, dword [edi]
xor ecx, ecx
mov esi, 0x811c9dc5
test eax, eax
je 0x4b4e0a
mov edx, dword [ebp - 0x18]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, edx
jb 0x4b4df3
mov edx, dword [ebp - 0x164]
mov ecx, dword [ebp - 0x60]
and ecx, esi
mov esi, dword [ebp - 0x6c]
mov eax, dword [esi + ecx*8]
cmp dword [esi + ecx*8 + 4], edx
jne 0x4b4e34
cmp eax, edx
jne 0x4b4e2b
mov eax, dword [ebp - 0x74]
mov dword [esi + ecx*8], eax
mov dword [esi + ecx*8 + 4], eax
jmp 0x4b4e3d
mov eax, dword [edx + 4]
mov dword [esi + ecx*8 + 4], eax
jmp 0x4b4e3d
cmp eax, edx
jne 0x4b4e3d
mov eax, dword [edx]
mov dword [esi + ecx*8], eax
mov ecx, dword [edx]
dec dword [ebp - 0x70]
mov eax, dword [edx + 4]
mov dword [eax], ecx
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
call fcn.004300b0
mov ecx, dword [ebp - 0x150]
jmp 0x4b4eb0
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x38]
je 0x4b4e99
movups xmm0, xmmword [ebp - 0x58]
mov esi, dword [ebp - 0x14c]
mov ecx, 0xf
mov dword [eax], esi
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
movups xmmword [eax + 4], xmm0
mov byte [ebp - 0x58], 0
movq xmm0, qword [ebp - 0x48]
movq qword [eax + 0x14], xmm0
add dword [ebp - 0x3c], 0x1c
jmp 0x4b4eb6
lea ecx, [ebp - 0x58]
push ecx
lea ecx, [ebp - 0x154]
push ecx
push eax
lea ecx, [ebp - 0x40]
call fcn.004c4400
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x14c]
mov byte [ebp - 4], 8
cmp ecx, 0x10
jb 0x4b4eeb
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4b4ee1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4b52b7
push ecx
push edx
call fcn.004d25e8
add esp, 8
inc esi
mov dword [ebp - 0x14c], esi
mov dword [ebp - 0x154], esi
cmp esi, dword [0x568ed0]
jb 0x4b4d20
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x154], eax
cmp ecx, eax
je 0x4b515f
lea edx, [ecx + 4]
mov ecx, eax
mov dword [ebp - 0x15c], edx
mov eax, dword [ebp - 0x74]
mov esi, dword [eax]
mov dword [ebp - 0x150], esi
cmp esi, eax
je 0x4b5148
nop word [eax + eax]
cmp dword [esi + 0x20], 0
lea ecx, [esi + 8]
mov dword [ebp - 0x158], ecx
jle 0x4b50dd
mov eax, dword [esi + 0x18]
mov edi, dword [edx + 0x10]
mov dword [ebp - 0x14c], eax
sub eax, edi
cmp eax, 2
ja 0x4b4ff8
cmp dword [edx + 0x14], 0x10
mov dword [ebp - 0x18], edx
jb 0x4b4f77
mov edx, dword [edx]
jmp 0x4b4f7a
mov edx, dword [ebp - 0x18]
cmp dword [esi + 0x1c], 0x10
mov eax, ecx
jb 0x4b4f84
mov eax, dword [ecx]
push edi
mov dword [ebp - 0x174], eax
lea ecx, [ebp - 0x174]
mov eax, dword [ebp - 0x14c]
push edx
mov dword [ebp - 0x170], eax
call fcn.0042dfb0
test al, al
jne 0x4b50f2
mov eax, dword [ebp - 0x15c]
mov edx, eax
cmp dword [eax + 0x14], 0x10
jb 0x4b4fbb
mov edx, dword [eax]
cmp dword [esi + 0x1c], 0x10
mov eax, dword [ebp - 0x158]
mov ecx, eax
jb 0x4b4fcb
mov ecx, dword [eax]
mov eax, dword [ebp - 0x14c]
push edi
mov dword [ebp - 0x16c], ecx
lea ecx, [ebp - 0x16c]
push edx
mov dword [ebp - 0x168], eax
call fcn.004158f0
test al, al
jne 0x4b50f2
mov edx, dword [ebp - 0x15c]
cmp dword [ebp - 0x14c], edi
jbe 0x4b50dd
test edi, edi
je 0x4b50dd
xor ecx, ecx
test edi, edi
je 0x4b5063
mov eax, dword [esi + 0x1c]
mov esi, dword [ebp - 0x158]
mov dword [ebp - 0x18], eax
nop
mov dword [ebp - 0x160], esi
cmp eax, 0x10
jb 0x4b5033
mov eax, dword [esi]
mov dword [ebp - 0x160], eax
cmp dword [edx + 0x14], 0x10
mov eax, edx
jb 0x4b503d
mov eax, dword [edx]
mov edx, dword [ebp - 0x160]
mov al, byte [eax + ecx]
cmp al, byte [edx + ecx]
mov edx, dword [ebp - 0x15c]
jne 0x4b5059
mov eax, dword [ebp - 0x18]
inc ecx
cmp ecx, edi
jb 0x4b5020
mov esi, dword [ebp - 0x150]
cmp edi, ecx
jb 0x4b50d6
mov eax, dword [esi + 0x1c]
mov esi, dword [ebp - 0x158]
mov dword [ebp - 0x18], eax
nop
cmp dword [edx + 0x14], 0x10
mov dword [ebp - 0x160], edx
jb 0x4b5087
mov eax, dword [edx]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x164], esi
cmp eax, 0x10
jb 0x4b509a
mov eax, dword [esi]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x160]
mov edx, dword [ebp - 0x14c]
mov esi, dword [ebp - 0x164]
mov al, byte [eax + edi - 1]
cmp al, byte [esi + edx - 1]
mov edx, dword [ebp - 0x15c]
mov esi, dword [ebp - 0x158]
jne 0x4b50d0
dec dword [ebp - 0x14c]
dec edi
mov eax, dword [ebp - 0x18]
cmp edi, ecx
jae 0x4b5070
mov esi, dword [ebp - 0x150]
sub edi, ecx
cmp edi, 1
jbe 0x4b510f
mov eax, dword [esi]
mov esi, eax
mov dword [ebp - 0x150], eax
cmp eax, dword [ebp - 0x74]
jne 0x4b4f40
jmp 0x4b5142
cmp dword [esi + 0x1c], 0x10
mov ecx, dword [ebp - 0x158]
jb 0x4b5100
mov ecx, dword [ecx]
mov eax, dword [ebp - 0x15c]
imul eax, dword [eax - 4], 0xd8
jmp 0x4b5124
cmp dword [esi + 0x1c], 0x10
mov ecx, dword [ebp - 0x158]
jb 0x4b511d
mov ecx, dword [ecx]
imul eax, dword [edx - 4], 0xd8
push ecx
add eax, 0xc
add eax, dword [0x568afc]
push 0x21
push eax
call fcn.004e64eb
mov edx, dword [ebp - 0x15c]
add esp, 0xc
dec dword [esi + 0x20]
mov ecx, dword [ebp - 0x154]
add edx, 0x1c
mov dword [ebp - 0x15c], edx
lea eax, [edx - 4]
cmp eax, ecx
jne 0x4b4f23
mov ecx, dword [ebp - 0x40]
mov byte [ebp - 4], 5
test ecx, ecx
je 0x4b51d7
mov edx, dword [ebp - 0x3c]
push ecx
call fcn.004c0b50
mov ecx, dword [ebp - 0x38]
mov eax, 0x92492493
mov esi, dword [ebp - 0x40]
add esp, 4
sub ecx, esi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x4b51b8
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4b52b7
push ecx
push esi
call fcn.004d25e8
add esp, 8
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
lea ecx, [ebp - 0x6c]
call fcn.00430330
mov edx, dword [ebp - 0x74]
call fcn.00430040
push 0x24
push dword [ebp - 0x74]
call fcn.004d25e8
add esp, 8
lea ecx, [ebp - 0x84]
call fcn.00414d20
mov edx, dword [ebp - 0x34]
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x20]
cmp ecx, 0x10
jb 0x4b5237
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4b522d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4b52bc
push ecx
push edx
call fcn.004d25e8
add esp, 8
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x128], 0xffffffff
je 0x4b5264
lea ecx, [ebp - 0x12c]
call fcn.0042d260
lea eax, [ebp - 0xcc]
push eax
call fcn.004d1322
add esp, 4
lea ecx, [ebp - 0x12c]
call fcn.0042df20
lea ecx, [ebp - 0x138]
call fcn.004291e0
lea ecx, [ebp - 0x144]
call fcn.0042d4e0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004d20a0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004158e0
call fcn.004e5df6
call fcn.004e5df6
int3