Function at 0x4d2c90
Capabilities:
Encrypt data using camellia

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe0
mov eax, dword [0x62aabc]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 0x10]
lea eax, [ebp - 0x84]
push esi
push edi
mov edi, dword [ebp + 8]
push 0x40
push 0
push eax
lea esi, [edi + 4]
call sub.VCRUNTIME140.dll_memset
push 0x110
push 0
push esi
call sub.VCRUNTIME140.dll_memset
mov eax, ebx
add esp, 0x18
sub eax, 0x80
je 0x4d2d13
sub eax, 0x40
je 0x4d2cf8
sub eax, 0x40
je 0x4d2cf8
pop edi
pop esi
mov eax, 0xffffffdc
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0054f742
mov esp, ebp
pop ebp
ret
mov eax, ebx
mov dword [edi], 4
shr eax, 3
mov dword [ebp - 0xd8], 1
test eax, eax
je 0x4d2d3b
jmp 0x4d2d28
mov eax, ebx
mov dword [ebp - 0xd8], 0
mov dword [edi], 3
shr eax, 3
push eax
push dword [ebp + 0xc]
lea eax, [ebp - 0x84]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dh, byte [ebp - 0x6d]
cmp ebx, 0xc0
mov bl, byte [ebp - 0x74]
jne 0x4d2d9b
mov al, byte [ebp - 0x73]
mov dl, bl
not al
not dl
mov byte [ebp - 0xc5], al
mov al, byte [ebp - 0x72]
not al
mov byte [ebp - 0xc6], al
mov al, byte [ebp - 0x71]
not al
mov byte [ebp - 0xc7], al
mov al, byte [ebp - 0x70]
not al
mov byte [ebp - 0xc8], al
mov al, byte [ebp - 0x6f]
not al
mov byte [ebp - 0xc9], al
mov al, byte [ebp - 0x6e]
not al
mov byte [ebp - 0xca], al
mov al, dh
not al
mov byte [ebp - 0xcb], al
jmp 0x4d2ddd
mov al, byte [ebp - 0x65]
mov dl, byte [ebp - 0x6c]
mov byte [ebp - 0xcb], al
mov al, byte [ebp - 0x66]
mov byte [ebp - 0xca], al
mov al, byte [ebp - 0x67]
mov byte [ebp - 0xc9], al
mov al, byte [ebp - 0x68]
mov byte [ebp - 0xc8], al
mov al, byte [ebp - 0x69]
mov byte [ebp - 0xc7], al
mov al, byte [ebp - 0x6a]
mov byte [ebp - 0xc6], al
mov al, byte [ebp - 0x6b]
mov byte [ebp - 0xc5], al
movzx ecx, byte [ebp - 0x84]
xorps xmm0, xmm0
movzx eax, byte [ebp - 0x83]
shl ecx, 8
or ecx, eax
movlpd qword [ebp - 0x44], xmm0
movzx eax, byte [ebp - 0x82]
shl ecx, 8
or ecx, eax
movzx edi, byte [ebp - 0x70]
movzx eax, byte [ebp - 0x81]
shl ecx, 8
or ecx, eax
movlpd qword [ebp - 0x3c], xmm0
movzx eax, byte [ebp - 0x7f]
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0x44], ecx
movzx ecx, byte [ebp - 0x80]
shl ecx, 8
or ecx, eax
movzx ebx, bl
movzx eax, byte [ebp - 0x7e]
shl ecx, 8
or ecx, eax
shl ebx, 8
movzx eax, byte [ebp - 0x7d]
shl ecx, 8
or ecx, eax
movlpd qword [ebp - 0x34], xmm0
movzx eax, byte [ebp - 0x7b]
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0x40], ecx
movzx ecx, byte [ebp - 0x7c]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xc4], 0xa09e667f
movzx eax, byte [ebp - 0x7a]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xc0], 0x3bcc908b
movzx eax, byte [ebp - 0x79]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xbc], 0xb67ae858
movzx eax, byte [ebp - 0x77]
mov dword [ebp - 0xe0], ecx
mov dword [ebp - 0x3c], ecx
movzx ecx, byte [ebp - 0x78]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xb8], 0x4caa73b2
movzx eax, byte [ebp - 0x76]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xb4], 0xc6ef372f
movzx eax, byte [ebp - 0x75]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xb0], 0xe94f82be
movzx eax, byte [ebp - 0x73]
or ebx, eax
mov dword [ebp - 0xac], 0x54ff53a5
movzx eax, byte [ebp - 0x72]
shl ebx, 8
or ebx, eax
mov dword [ebp - 0xa8], 0xf1d36f1c
movzx eax, byte [ebp - 0x71]
shl ebx, 8
or ebx, eax
mov dword [ebp - 0xa4], 0x10e527fa
movzx eax, byte [ebp - 0x6f]
mov dword [ebp - 0xa0], 0xde682d1d
mov dword [ebp - 0x9c], 0xb05688c2
mov dword [ebp - 0x98], 0xb3e6c1fd
movlpd qword [ebp - 0x2c], xmm0
movlpd qword [ebp - 0x14], xmm0
movlpd qword [ebp - 0xc], xmm0
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ebx
shl edi, 8
or edi, eax
movzx ecx, byte [ebp - 0xc8]
movzx eax, byte [ebp - 0x6e]
shl edi, 8
or edi, eax
xor ebx, dword [ebp - 0xd4]
movzx eax, dh
movzx edx, dl
shl edx, 8
shl edi, 8
or edi, eax
shl ecx, 8
movzx eax, byte [ebp - 0xc5]
or edx, eax
mov dword [ebp - 0x30], edi
movzx eax, byte [ebp - 0xc6]
xor edi, dword [ebp - 0xd0]
shl edx, 8
or edx, eax
mov dword [ebp - 0x24], ebx
movzx eax, byte [ebp - 0xc7]
shl edx, 8
or edx, eax
mov dword [ebp - 0x20], edi
movzx eax, byte [ebp - 0xc9]
or ecx, eax
mov dword [ebp - 0x2c], edx
movzx eax, byte [ebp - 0xca]
xor edx, dword [ebp - 0xe0]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x1c], edx
movzx eax, byte [ebp - 0xcb]
shl ecx, 8
or ecx, eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0xc4]
mov dword [ebp - 0x28], ecx
xor ecx, dword [ebp - 0xdc]
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], ecx
push eax
call fcn.004d2150
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004d2150
movups xmm0, xmmword [ebp - 0x24]
lea eax, [ebp - 0x1c]
movups xmm1, xmmword [ebp - 0x44]
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x24]
pxor xmm1, xmm0
push eax
movups xmmword [ebp - 0x24], xmm1
call fcn.004d2150
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004d2150
add esp, 0x30
cmp dword [ebp + 0x10], 0x80
jbe 0x4d309b
mov eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x34]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x2c]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x28]
mov dword [ebp - 8], eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.004d2150
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.004d2150
add esp, 0x18
mov edi, dword [ebp - 0xd8]
mov ebx, edi
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
shl ebx, 4
mov dword [ebp - 0x8c], ecx
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x94], edx
cmp byte [ebx + 0x57eec8], 0
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0xd0], ebx
je 0x4d3120
mov ecx, eax
mov eax, edx
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x3c]
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x80], ecx
mov ecx, dword [ebp - 0x38]
shl eax, 0xf
shr ecx, 0x11
xor ecx, eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x7c], ecx
mov ecx, edx
shl eax, 0xf
shr ecx, 0x11
xor ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x78], ecx
cmp byte [ebx + 0x57eec9], 0
je 0x4d316a
mov ecx, eax
mov eax, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x74], ecx
mov ecx, dword [ebp - 0x3c]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp - 0x38]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x6c], ecx
mov ecx, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov dword [ebp - 0x68], ecx
cmp byte [ebx + 0x57eeca], 0
je 0x4d31b5
mov ecx, dword [ebp - 0x40]
mov eax, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x3c]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x60], ecx
mov ecx, dword [ebp - 0x38]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x5c], ecx
mov ecx, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov dword [ebp - 0x58], ecx
cmp byte [ebx + 0x57eecb], 0
je 0x4d31fe
mov ecx, dword [ebp - 0x40]
mov eax, edx
shl eax, 0x1c
shr ecx, 4
xor ecx, eax
shr edx, 4
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0x40]
shr eax, 4
shl ecx, 0x1c
xor eax, ecx
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x38]
shr eax, 4
shl ecx, 0x1c
xor eax, ecx
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x38]
shl eax, 0x1c
xor edx, eax
mov dword [ebp - 0x48], edx
lea ebx, [edi + edi*4]
xor edx, edx
shl ebx, 4
mov dword [ebp - 0xd4], ebx
nop dword [eax]
mov al, byte [ebx + edx + 0x57eee8]
lea edi, [edx*4]
cmp al, 0xff
je 0x4d322f
movsx ecx, al
mov eax, dword [ebp + edi - 0x94]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57eee9]
cmp al, 0xff
je 0x4d3247
movsx ecx, al
mov eax, dword [ebp + edi - 0x90]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57eeea]
cmp al, 0xff
je 0x4d325f
movsx ecx, al
mov eax, dword [ebp + edi - 0x8c]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57eeeb]
cmp al, 0xff
je 0x4d3277
movsx ecx, al
mov eax, dword [ebp + edi - 0x88]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + str._b_t_n_v__]
cmp al, 0xff
je 0x4d328f
movsx ecx, al
mov eax, dword [ebp + edi - 0x84]
mov dword [esi + ecx*4], eax
add edx, 5
cmp edx, 0x14
jb 0x4d3210
cmp dword [ebp + 0x10], 0x80
mov ebx, dword [ebp - 0xd0]
jbe 0x4d3491
cmp byte [ebx + 0x57eecc], 0
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
mov edi, dword [ebp - 0x30]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x94], edx
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x88], eax
je 0x4d331e
mov ecx, edi
mov eax, edx
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x2c]
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x80], ecx
mov ecx, dword [ebp - 0x28]
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x7c], ecx
mov ecx, edx
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov dword [ebp - 0x78], ecx
cmp byte [ebx + 0x57eecd], 0
je 0x4d3367
mov ecx, edi
mov eax, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x74], ecx
mov ecx, dword [ebp - 0x2c]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp - 0x28]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x6c], ecx
mov ecx, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov dword [ebp - 0x68], ecx
cmp byte [ebx + 0x57eece], 0
je 0x4d33b0
mov ecx, edi
mov eax, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x2c]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], ecx
mov ecx, dword [ebp - 0x28]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x5c], ecx
mov ecx, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov dword [ebp - 0x58], ecx
cmp byte [ebx + 0x57eecf], 0
je 0x4d33f3
mov ecx, edi
mov eax, edx
shl eax, 0x1c
shr ecx, 4
xor ecx, eax
shl edi, 0x1c
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, ecx
shr eax, 4
xor eax, edi
shl ecx, 0x1c
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x50], eax
mov eax, edi
shr eax, 4
xor eax, ecx
shr edx, 4
shl edi, 0x1c
xor edx, edi
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov ebx, dword [ebp - 0xd4]
xor edx, edx
nop dword [eax + eax]
mov al, byte [ebx + edx + 0x57eefc]
lea edi, [edx*4]
cmp al, 0xff
je 0x4d341f
movsx ecx, al
mov eax, dword [ebp + edi - 0x94]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57eefd]
cmp al, 0xff
je 0x4d3437
movsx ecx, al
mov eax, dword [ebp + edi - 0x90]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57eefe]
cmp al, 0xff
je 0x4d344f
movsx ecx, al
mov eax, dword [ebp + edi - 0x8c]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57eeff]
cmp al, 0xff
je 0x4d3467
movsx ecx, al
mov eax, dword [ebp + edi - 0x88]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef00]
cmp al, 0xff
je 0x4d347f
movsx ecx, al
mov eax, dword [ebp + edi - 0x84]
mov dword [esi + ecx*4], eax
add edx, 5
cmp edx, 0x14
jb 0x4d3400
mov ebx, dword [ebp - 0xd0]
cmp byte [ebx + 0x57eed0], 0
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x94], edx
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x88], eax
je 0x4d3501
mov ecx, edi
mov eax, edx
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x1c]
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x80], ecx
mov ecx, dword [ebp - 0x18]
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x7c], ecx
mov ecx, edx
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov dword [ebp - 0x78], ecx
cmp byte [ebx + 0x57eed1], 0
je 0x4d354a
mov ecx, edi
mov eax, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x74], ecx
mov ecx, dword [ebp - 0x1c]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp - 0x18]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x6c], ecx
mov ecx, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov dword [ebp - 0x68], ecx
cmp byte [ebx + 0x57eed2], 0
je 0x4d3593
mov ecx, edi
mov eax, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x1c]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x60], ecx
mov ecx, dword [ebp - 0x18]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x5c], ecx
mov ecx, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov dword [ebp - 0x58], ecx
cmp byte [ebx + 0x57eed3], 0
je 0x4d35d6
mov ecx, edi
mov eax, edx
shl eax, 0x1c
shr ecx, 4
xor ecx, eax
shl edi, 0x1c
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0x1c]
mov eax, ecx
shr eax, 4
xor eax, edi
shl ecx, 0x1c
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x50], eax
mov eax, edi
shr eax, 4
xor eax, ecx
shr edx, 4
shl edi, 0x1c
xor edx, edi
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov ebx, dword [ebp - 0xd4]
xor edx, edx
nop
mov al, byte [ebx + edx + 0x57ef10]
lea edi, [edx*4]
cmp al, 0xff
je 0x4d35ff
movsx ecx, al
mov eax, dword [ebp + edi - 0x94]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef11]
cmp al, 0xff
je 0x4d3617
movsx ecx, al
mov eax, dword [ebp + edi - 0x90]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef12]
cmp al, 0xff
je 0x4d362f
movsx ecx, al
mov eax, dword [ebp + edi - 0x8c]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef13]
cmp al, 0xff
je 0x4d3647
movsx ecx, al
mov eax, dword [ebp + edi - 0x88]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef14]
cmp al, 0xff
je 0x4d365f
movsx ecx, al
mov eax, dword [ebp + edi - 0x84]
mov dword [esi + ecx*4], eax
add edx, 5
cmp edx, 0x14
jb 0x4d35e0
cmp dword [ebp + 0x10], 0x80
mov ebx, dword [ebp - 0xd0]
jbe 0x4d385b
cmp byte [ebx + 0x57eed4], 0
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x94], edx
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x88], eax
je 0x4d36ee
mov ecx, edi
mov eax, edx
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0xc]
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x80], ecx
mov ecx, dword [ebp - 8]
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x7c], ecx
mov ecx, edx
shr ecx, 0x11
shl eax, 0xf
xor ecx, eax
mov dword [ebp - 0x78], ecx
cmp byte [ebx + 0x57eed5], 0
je 0x4d3737
mov ecx, edi
mov eax, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x74], ecx
mov ecx, dword [ebp - 0xc]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp - 8]
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x6c], ecx
mov ecx, edx
shr ecx, 2
shl eax, 0x1e
xor ecx, eax
mov dword [ebp - 0x68], ecx
cmp byte [ebx + 0x57eed6], 0
je 0x4d3780
mov ecx, edi
mov eax, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, edi
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0xc]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x60], ecx
mov ecx, dword [ebp - 8]
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x5c], ecx
mov ecx, edx
shr ecx, 0x13
shl eax, 0xd
xor ecx, eax
mov dword [ebp - 0x58], ecx
cmp byte [ebx + 0x57eed7], 0
je 0x4d37c3
mov ebx, dword [ebp - 8]
mov eax, edx
shl eax, 0x1c
mov ecx, edi
shr ecx, 4
xor ecx, eax
shl edi, 0x1c
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0xc]
mov eax, ecx
shr eax, 4
xor eax, edi
shl ecx, 0x1c
mov dword [ebp - 0x50], eax
mov eax, ebx
shr eax, 4
xor eax, ecx
shr edx, 4
shl ebx, 0x1c
xor edx, ebx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov ebx, dword [ebp - 0xd4]
xor edx, edx
nop dword [eax + eax]
mov al, byte [ebx + edx + 0x57ef24]
lea edi, [edx*4]
cmp al, 0xff
je 0x4d37ef
movsx ecx, al
mov eax, dword [ebp + edi - 0x94]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef25]
cmp al, 0xff
je 0x4d3807
movsx ecx, al
mov eax, dword [ebp + edi - 0x90]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef26]
cmp al, 0xff
je 0x4d381f
movsx ecx, al
mov eax, dword [ebp + edi - 0x8c]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef27]
cmp al, 0xff
je 0x4d3837
movsx ecx, al
mov eax, dword [ebp + edi - 0x88]
mov dword [esi + ecx*4], eax
mov al, byte [ebx + edx + 0x57ef28]
cmp al, 0xff
je 0x4d384f
movsx ecx, al
mov eax, dword [ebp + edi - 0x84]
mov dword [esi + ecx*4], eax
add edx, 5
cmp edx, 0x14
jb 0x4d37d0
mov ecx, dword [ebp - 0xd8]
xor edi, edi
lea eax, [ecx + ecx*4]
lea ebx, [eax*4 + 0x57ef88]
nop dword [eax]
mov al, byte [ebx]
cmp al, 0xff
je 0x4d388f
movsx edx, al
lea eax, [ecx + ecx*2]
lea ecx, [edi + eax*4]
mov eax, dword [esi + edx*4]
mov dword [esi + ecx*4 + 0x80], eax
mov ecx, dword [ebp - 0xd8]
inc edi
inc ebx
cmp edi, 0x14
jb 0x4d3870
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0054f742
mov esp, ebp
pop ebp
ret