Function at 0x4626e8
Capabilities:
Encode data using xor
Hash data with md5

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffff54
mov dword [esp], ecx
mov ebx, edx
lea edx, [esp + 0x20]
mov dword [esp + 4], edx
mov edx, dword [esp + 4]
mov ecx, ebx
call fcn.00402d94
add dword [esp + 4], ebx
mov eax, dword [esp + 4]
mov byte [eax], 0x80
inc dword [esp + 4]
mov edx, 0x80
sub edx, ebx
sub edx, 9
mov eax, dword [esp + 4]
call fcn.00407a94
shl ebx, 3
mov dword [esp + 0xa4], ebx
xor eax, eax
mov dword [esp + 0xa8], eax
fild qword [esp + 0xa4]
fistp qword [esp + 8]
wait
lea eax, [esp + 0x20]
mov dword [esp + 4], eax
add dword [esp + 4], 0x78
mov edx, dword [esp + 4]
lea eax, [esp + 8]
mov ecx, 8
call fcn.00402d94
xor esi, esi
mov dword [esp + 0x10], 0x67452301
mov dword [esp + 0x14], 0xefcdab89
mov dword [esp + 0x18], 0x98badcfe
mov dword [esp + 0x1c], 0x10325476
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
lea edi, [esi]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xd76aa478
mov ebp, ebx
xor ebp, ecx
and ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 7
shr eax, 0x19
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 1]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xe8c7b756
mov ebp, ecx
xor ebp, edx
and ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xc
shr ebx, 0x14
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 2]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x242070db
mov ebp, edx
xor ebp, eax
and ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x11
shr ecx, 0xf
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 3]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xc1bdceee
mov ebp, eax
xor ebp, ebx
and ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x16
shr edx, 0xa
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 4]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xf57c0faf
mov ebp, ebx
xor ebp, ecx
and ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 7
shr eax, 0x19
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 5]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x4787c62a
mov ebp, ecx
xor ebp, edx
and ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xc
shr ebx, 0x14
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 6]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xa8304613
mov ebp, edx
xor ebp, eax
and ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x11
shr ecx, 0xf
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 7]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xfd469501
mov ebp, eax
xor ebp, ebx
and ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x16
shr edx, 0xa
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 8]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x698098d8
mov ebp, ebx
xor ebp, ecx
and ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 7
shr eax, 0x19
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 9]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x8b44f7af
mov ebp, ecx
xor ebp, edx
and ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xc
shr ebx, 0x14
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xa]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xffff5bb1
mov ebp, edx
xor ebp, eax
and ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x11
shr ecx, 0xf
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 0xb]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x895cd7be
mov ebp, eax
xor ebp, ebx
and ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x16
shr edx, 0xa
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 0xc]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x6b901122
mov ebp, ebx
xor ebp, ecx
and ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 7
shr eax, 0x19
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 0xd]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xfd987193
mov ebp, ecx
xor ebp, edx
and ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xc
shr ebx, 0x14
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xe]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xa679438e
mov ebp, edx
xor ebp, eax
and ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x11
shr ecx, 0xf
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 0xf]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x49b40821
mov ebp, eax
xor ebp, ebx
and ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x16
shr edx, 0xa
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 1]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xf61e2562
mov ebp, ecx
xor ebp, edx
and ebp, ebx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 5
shr eax, 0x1b
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 6]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xc040b340
mov ebp, edx
xor ebp, eax
and ebp, ecx
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 9
shr ebx, 0x17
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xb]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x265e5a51
mov ebp, eax
xor ebp, ebx
and ebp, edx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xe
shr ecx, 0x12
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xe9b6c7aa
mov ebp, ebx
xor ebp, ecx
and ebp, eax
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x14
shr edx, 0xc
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 5]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xd62f105d
mov ebp, ecx
xor ebp, edx
and ebp, ebx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 5
shr eax, 0x1b
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 0xa]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x2441453
mov ebp, edx
xor ebp, eax
and ebp, ecx
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 9
shr ebx, 0x17
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xf]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xd8a1e681
mov ebp, eax
xor ebp, ebx
and ebp, edx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xe
shr ecx, 0x12
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 4]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xe7d3fbc8
mov ebp, ebx
xor ebp, ecx
and ebp, eax
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x14
shr edx, 0xc
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 9]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x21e1cde6
mov ebp, ecx
xor ebp, edx
and ebp, ebx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 5
shr eax, 0x1b
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 0xe]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xc33707d6
mov ebp, edx
xor ebp, eax
and ebp, ecx
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 9
shr ebx, 0x17
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 3]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xf4d50d87
mov ebp, eax
xor ebp, ebx
and ebp, edx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xe
shr ecx, 0x12
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 8]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x455a14ed
mov ebp, ebx
xor ebp, ecx
and ebp, eax
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x14
shr edx, 0xc
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 0xd]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xa9e3e905
mov ebp, ecx
xor ebp, edx
and ebp, ebx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 5
shr eax, 0x1b
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 2]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xfcefa3f8
mov ebp, edx
xor ebp, eax
and ebp, ecx
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 9
shr ebx, 0x17
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 7]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x676f02d9
mov ebp, eax
xor ebp, ebx
and ebp, edx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xe
shr ecx, 0x12
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 0xc]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x8d2a4c8a
mov ebp, ebx
xor ebp, ecx
and ebp, eax
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x14
shr edx, 0xc
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 5]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xfffa3942
mov ebp, ecx
xor ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 4
shr eax, 0x1c
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 8]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x8771f681
mov ebp, edx
xor ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xb
shr ebx, 0x15
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xb]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x6d9d6122
mov ebp, eax
xor ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x10
shr ecx, 0x10
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 0xe]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xfde5380c
mov ebp, ebx
xor ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x17
shr edx, 9
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 1]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xa4beea44
mov ebp, ecx
xor ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 4
shr eax, 0x1c
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 4]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x4bdecfa9
mov ebp, edx
xor ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xb
shr ebx, 0x15
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 7]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xf6bb4b60
mov ebp, eax
xor ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x10
shr ecx, 0x10
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 0xa]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xbebfbc70
mov ebp, ebx
xor ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x17
shr edx, 9
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 0xd]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x289b7ec6
mov ebp, ecx
xor ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 4
shr eax, 0x1c
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xeaa127fa
mov ebp, edx
xor ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xb
shr ebx, 0x15
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 3]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xd4ef3085
mov ebp, eax
xor ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x10
shr ecx, 0x10
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 6]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x4881d05
mov ebp, ebx
xor ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x17
shr edx, 9
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 9]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xd9d4d039
mov ebp, ecx
xor ebp, edx
xor ebp, ebx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 4
shr eax, 0x1c
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 0xc]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xe6db99e5
mov ebp, edx
xor ebp, eax
xor ebp, ecx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xb
shr ebx, 0x15
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xf]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x1fa27cf8
mov ebp, eax
xor ebp, ebx
xor ebp, edx
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0x10
shr ecx, 0x10
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 2]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xc4ac5665
mov ebp, ebx
xor ebp, ecx
xor ebp, eax
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x17
shr edx, 9
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xf4292244
mov ebp, ebx
not ebp
or ebp, edx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 6
shr eax, 0x1a
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 7]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x432aff97
mov ebp, ecx
not ebp
or ebp, eax
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xa
shr ebx, 0x16
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xe]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xab9423a7
mov ebp, edx
not ebp
or ebp, ebx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xf
shr ecx, 0x11
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 5]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xfc93a039
mov ebp, eax
not ebp
or ebp, ecx
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x15
shr edx, 0xb
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 0xc]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x655b59c3
mov ebp, ebx
not ebp
or ebp, edx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 6
shr eax, 0x1a
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 3]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x8f0ccc92
mov ebp, ecx
not ebp
or ebp, eax
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xa
shr ebx, 0x16
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 0xa]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xffeff47d
mov ebp, edx
not ebp
or ebp, ebx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xf
shr ecx, 0x11
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 1]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x85845dd1
mov ebp, eax
not ebp
or ebp, ecx
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x15
shr edx, 0xb
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 8]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x6fa87e4f
mov ebp, ebx
not ebp
or ebp, edx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 6
shr eax, 0x1a
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 0xf]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xfe2ce6e0
mov ebp, ecx
not ebp
or ebp, eax
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xa
shr ebx, 0x16
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 6]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xa3014314
mov ebp, edx
not ebp
or ebp, ebx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xf
shr ecx, 0x11
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 0xd]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x4e0811a1
mov ebp, eax
not ebp
or ebp, ecx
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x15
shr edx, 0xb
or edi, edx
add edi, ecx
mov edx, edi
lea edi, [esi + 4]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xf7537e82
mov ebp, ebx
not ebp
or ebp, edx
xor ebp, ecx
add edi, ebp
add eax, edi
mov edi, eax
shl edi, 6
shr eax, 0x1a
or edi, eax
add edi, edx
mov eax, edi
lea edi, [esi + 0xb]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xbd3af235
mov ebp, ecx
not ebp
or ebp, eax
xor ebp, edx
add edi, ebp
add ebx, edi
mov edi, ebx
shl edi, 0xa
shr ebx, 0x16
or edi, ebx
add edi, eax
mov ebx, edi
lea edi, [esi + 2]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0x2ad7d2bb
mov ebp, edx
not ebp
or ebp, ebx
xor ebp, eax
add edi, ebp
add ecx, edi
mov edi, ecx
shl edi, 0xf
shr ecx, 0x11
or edi, ecx
add edi, ebx
mov ecx, edi
lea edi, [esi + 9]
mov edi, dword [esp + edi*4 + 0x20]
add edi, 0xeb86d391
mov ebp, eax
not ebp
or ebp, ecx
xor ebp, ebx
add edi, ebp
add edx, edi
mov edi, edx
shl edi, 0x15
shr edx, 0xb
or edi, edx
add edi, ecx
mov edx, edi
add dword [esp + 0x10], eax
add dword [esp + 0x14], edx
add dword [esp + 0x18], ecx
add dword [esp + 0x1c], ebx
add esi, 0x10
cmp esi, 0x20
jb 0x46278c
mov edx, dword [esp]
lea eax, [esp + 0x10]
mov ecx, 4
call fcn.00402d94
mov edx, dword [esp]
add edx, 4
lea eax, [esp + 0x14]
mov ecx, 4
call fcn.00402d94
mov edx, dword [esp]
add edx, 8
lea eax, [esp + 0x18]
mov ecx, 4
call fcn.00402d94
mov edx, dword [esp]
add edx, 0xc
lea eax, [esp + 0x1c]
mov ecx, 4
call fcn.00402d94
add esp, 0xac
pop ebp
pop edi
pop esi
pop ebx
ret