Function at 0x435e50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
mov eax, dword [ebp + 0x18]
push ebx
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x24], ebx
push esi
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x20], esi
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x14], edi
cmp ebx, 0x10
ja 0x436201
cmp ebx, 8
jbe 0x436016
mov edx, dword [ebx + edi - 4]
mov eax, dword [ebx + edi - 8]
mov ebx, 0x85ebca87
mov edi, dword [esi + 0x28]
xor edi, dword [esi + 0x20]
mov ecx, dword [esi + 0x2c]
xor edi, eax
xor ecx, dword [esi + 0x24]
mov eax, dword [ebp - 0x14]
xor ecx, edx
xor ecx, dword [eax + 4]
xor edi, dword [eax]
mov eax, edi
mov dword [ebp - 4], ecx
mul ebx
mov dword [ebp - 8], eax
mov esi, edx
mov eax, ecx
mul ebx
mov ebx, dword [ebp - 0x14]
mov ecx, eax
mov dword [ebp - 0x10], edx
mov eax, edi
mov edx, 0x9e3779b1
mul edx
add eax, esi
mov edi, edx
mov edx, dword [ebp - 0x24]
adc edi, 0
add eax, ecx
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x20]
adc edi, 0
mov ecx, dword [eax + 0x38]
xor ecx, dword [eax + 0x30]
mov esi, dword [eax + 0x3c]
xor esi, dword [eax + 0x34]
mov eax, dword [edx + ebx - 8]
xor eax, ecx
mov ecx, dword [edx + ebx - 4]
xor ecx, esi
mov edx, 0x85ebca77
mul edx
mov dword [ebp - 0x18], eax
mov esi, edx
mov eax, dword [ebp - 4]
mov edx, 0x9e3779b1
mul edx
add dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
adc esi, edx
mov edx, dword [ebp - 0xc]
add eax, edi
adc esi, 0
add eax, dword [ebp - 0x10]
adc esi, 0
add eax, 0
mov ebx, eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x24]
adc esi, ecx
xor ecx, ecx
mov dword [ebp - 4], esi
or ecx, dword [ebp - 8]
dec eax
shl eax, 0x16
mov edi, esi
add ecx, 0
bswap edi
adc edx, eax
xor edi, ecx
bswap ebx
xor ebx, edx
mov eax, edi
mov ecx, 0x27d4eb4f
mov dword [ebp - 8], ebx
mul ecx
mov dword [ebp - 0x30], ebx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 8]
mul ecx
push 0x16566791
mov ecx, eax
mov dword [ebp - 0xc], edx
mov eax, edi
mov edx, 0xc2b2ae3d
mul edx
push 0x9e3779f9
mov edi, eax
mov eax, edx
add edi, esi
adc eax, 0
add edi, ecx
mov ecx, edi
adc eax, 0
xor esi, esi
mov dword [ebp - 0x10], eax
or esi, ebx
xor eax, eax
shr ecx, 5
xor eax, edi
xor ecx, esi
push eax
push ecx
call fcn.005128c0
mov ecx, edx
xor esi, esi
xor ecx, eax
xor esi, edx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x34], ecx
mov ecx, 0xc2b2ae3d
push ecx
mul ecx
push 0x27d4eb4f
push dword [ebp - 4]
mov dword [ebp - 0x30], esi
mov edi, edx
push dword [ebp - 0x18]
mov esi, eax
call fcn.005128c0
add esi, eax
adc edi, edx
add esi, dword [ebp - 0x10]
adc edi, 0
add esi, dword [ebp - 0xc]
adc edi, 0
xor eax, eax
mov ecx, edi
shr ecx, 5
xor ecx, esi
xor eax, edi
push 0x16566791
push 0x9e3779f9
push eax
push ecx
call fcn.005128c0
mov ecx, edx
xor esi, esi
xor ecx, eax
xor esi, edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x2c], ecx
movups xmm0, xmmword [ebp - 0x34]
pop edi
pop esi
movups xmmword [eax], xmm0
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 4
jb 0x43610b
mov eax, dword [esi + 0x18]
xor edx, edx
xor eax, dword [esi + 0x10]
xor ebx, ebx
mov ecx, dword [esi + 0x1c]
xor ecx, dword [esi + 0x14]
add edx, eax
mov esi, dword [ebp - 0x24]
bswap ebx
adc ebx, ecx
xor eax, eax
add eax, dword [edi]
mov ecx, dword [esi + edi - 4]
adc ecx, 0
xor edx, eax
xor ebx, ecx
mov dword [ebp - 4], edx
mov dword [ebp - 8], ebx
lea ecx, [esi*4]
xor ebx, ebx
mov eax, edx
add ecx, 0x85ebca87
push 0x9fb21c65
adc ebx, 0x9e3779b1
mul ecx
mov dword [ebp - 0x10], ebx
mov edi, eax
mov esi, edx
mov eax, dword [ebp - 8]
mul ecx
push 0x1e98df25
mov ecx, eax
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 4]
mul ebx
add eax, esi
mov ebx, edx
adc ebx, 0
add eax, ecx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
adc ebx, 0
mul dword [ebp - 0x10]
xor ecx, ecx
or ecx, edi
mov edi, eax
mov eax, dword [ebp - 4]
mov esi, eax
mov dword [ebp - 0x1c], ecx
shld esi, ecx, 1
add ecx, ecx
add edi, ecx
adc edx, esi
add edi, ebx
adc edx, 0
add edi, dword [ebp - 0xc]
adc edx, 0
mov dword [ebp - 4], edx
mov edx, edi
mov ebx, dword [ebp - 4]
mov esi, ebx
shrd edx, esi, 3
xor edx, dword [ebp - 0x1c]
shr esi, 3
xor esi, eax
xor eax, eax
mov ecx, esi
xor eax, esi
shr ecx, 3
xor ecx, edx
push eax
push ecx
call fcn.005128c0
mov ecx, eax
mov esi, edx
shrd ecx, esi, 0x1c
shr esi, 0x1c
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], esi
mov ecx, ebx
xor eax, eax
shr ecx, 5
xor ecx, edi
xor eax, ebx
jmp 0x435fe6
test ebx, ebx
je 0x4361bb
mov ecx, dword [ebp - 0x14]
mov eax, ebx
shr eax, 1
push 0x165667b1
push 0x9e3779f9
movzx edi, byte [eax + edi]
movzx eax, byte [ecx]
shl edi, 8
or edi, eax
movzx eax, byte [ebx + ecx - 1]
mov ecx, dword [esi + 4]
xor ecx, dword [esi]
shl edi, 8
or edi, ebx
mov ebx, 0xc2b2ae3d
shl edi, 8
or edi, eax
mov eax, ebx
xor ecx, edi
mul ecx
mov esi, eax
mov eax, 0x27d4eb4f
mul ecx
add esi, edx
mov edx, eax
mov ecx, esi
shrd edx, ecx, 0x1d
shr ecx, 0x1d
xor edx, eax
xor ecx, esi
push ecx
push edx
call fcn.005128c0
xor esi, esi
mov ecx, edx
xor esi, edx
xor ecx, eax
mov dword [ebp - 0x30], esi
mov eax, ebx
mov esi, dword [ebp - 0x20]
bswap edi
rol edi, 0xd
mov dword [ebp - 0x34], ecx
xor edi, dword [esi + 0xc]
xor edi, dword [esi + 8]
mul edi
push 0x165667b1
mov esi, eax
mov eax, 0x27d4eb4f
mul edi
push 0x9e3779f9
add esi, edx
mov edx, eax
mov ecx, esi
shrd edx, ecx, 0x1d
shr ecx, 0x1d
xor edx, eax
xor ecx, esi
push ecx
push edx
jmp 0x435ff2
mov eax, dword [esi + 0x4c]
xor eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
xor ecx, dword [esi + 0x40]
push eax
push ecx
call fcn.00435760
mov ecx, dword [esi + 0x58]
xor ecx, dword [esi + 0x50]
mov dword [ebp - 0x34], eax
mov eax, dword [esi + 0x5c]
xor eax, dword [esi + 0x54]
push eax
push ecx
mov dword [ebp - 0x30], edx
call fcn.00435760
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x28], edx
movups xmm0, xmmword [ebp - 0x34]
pop edi
pop esi
movups xmmword [eax], xmm0
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 0x80
ja 0x436786
push 0x9e3779b1
push 0x85ebca87
push 0
push ebx
call fcn.005128c0
mov dword [ebp - 0x38], eax
xorps xmm0, xmm0
mov dword [ebp - 0x18], edx
movlpd qword [ebp - 0x2c], xmm0
cmp ebx, 0x20
jbe 0x4365a9
cmp ebx, 0x40
jbe 0x436484
cmp ebx, 0x60
jbe 0x43635c
mov eax, dword [esi + 0x6c]
mov edi, dword [edi + 0x30]
xor edi, dword [esi + 0x60]
mov ecx, dword [esi + 0x68]
mov ebx, dword [ebp - 0x14]
xor eax, dword [ebx + 0x3c]
xor ecx, dword [ebx + 0x38]
mov edx, dword [ebx + 0x34]
xor edx, dword [esi + 0x64]
mov dword [ebp - 0xc], eax
mov eax, edi
mov dword [ebp - 8], edx
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 8]
mul ecx
mov ecx, eax
mov dword [ebp - 0x10], edx
mov eax, edi
mul dword [ebp - 0xc]
add eax, esi
mov edi, edx
adc edi, 0
add eax, ecx
adc edi, 0
xor esi, esi
or esi, ebx
mov ebx, eax
mov eax, dword [ebp - 8]
mul dword [ebp - 0xc]
add eax, edi
mov edi, dword [ebp - 0x14]
adc edx, 0
add eax, dword [ebp - 0x10]
adc edx, 0
xor esi, eax
xor ebx, edx
add esi, dword [ebp - 0x38]
mov edx, dword [ebp - 0x24]
adc ebx, dword [ebp - 0x18]
mov eax, dword [edx + edi - 0x40]
add eax, dword [edx + edi - 0x38]
mov ecx, dword [edx + edi - 0x3c]
adc ecx, dword [edx + edi - 0x34]
xor esi, eax
mov edi, dword [edx + edi - 0x40]
xor ebx, ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x38], esi
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x18], ebx
mov edx, dword [edx + eax - 0x3c]
mov ebx, dword [ebp - 0x24]
mov ecx, dword [esi + 0x78]
xor ecx, dword [ebx + eax - 0x38]
mov eax, dword [esi + 0x7c]
mov esi, dword [ebp - 0x14]
xor eax, dword [ebx + esi - 0x34]
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], eax
xor edi, dword [esi + 0x70]
xor edx, dword [esi + 0x74]
mov eax, edi
mov dword [ebp - 8], edx
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 8]
mul ecx
mov ecx, eax
mov dword [ebp - 4], edx
mov eax, edi
mul dword [ebp - 0xc]
add eax, esi
mov edi, edx
adc edi, 0
add eax, ecx
adc edi, 0
xor ecx, ecx
or ecx, ebx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 8]
mul dword [ebp - 0xc]
add eax, edi
mov edi, dword [ebp - 0x14]
adc edx, 0
add eax, dword [ebp - 4]
mov ebx, dword [edi + 0x38]
adc edx, 0
add ebx, dword [edi + 0x30]
mov esi, dword [edi + 0x3c]
adc esi, dword [edi + 0x34]
xor ebx, ecx
xor esi, dword [ebp - 0x10]
xor ebx, eax
xor esi, edx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 4], esi
mov esi, dword [ebp - 0x20]
jmp 0x436368
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x48]
mov edi, dword [edi + 0x20]
xor edi, dword [esi + 0x40]
mov ebx, dword [ebp - 0x14]
xor eax, dword [ebx + 0x2c]
xor ecx, dword [ebx + 0x28]
mov edx, dword [ebx + 0x24]
xor edx, dword [esi + 0x44]
mov dword [ebp - 0xc], eax
mov eax, edi
mov dword [ebp - 8], edx
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 8]
mul ecx
mov ecx, eax
mov dword [ebp - 0x28], edx
mov eax, edi
mul dword [ebp - 0xc]
add eax, esi
mov edi, edx
adc edi, 0
add eax, ecx
mov dword [ebp - 0x1c], eax
adc edi, 0
xor esi, esi
or esi, ebx
mov ebx, eax
mov eax, dword [ebp - 8]
mul dword [ebp - 0xc]
add eax, edi
mov edi, dword [ebp - 0x14]
adc edx, 0
add eax, dword [ebp - 0x28]
adc edx, 0
xor esi, eax
xor ebx, edx
add esi, dword [ebp - 0x38]
mov edx, dword [ebp - 0x24]
adc ebx, dword [ebp - 0x18]
mov eax, dword [edx + edi - 0x30]
add eax, dword [edx + edi - 0x28]
mov ecx, dword [edx + edi - 0x2c]
adc ecx, dword [edx + edi - 0x24]
xor esi, eax
mov edi, dword [edx + edi - 0x30]
xor ebx, ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x38], esi
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x18], ebx
mov edx, dword [edx + eax - 0x2c]
mov ebx, dword [ebp - 0x24]
mov ecx, dword [esi + 0x58]
xor ecx, dword [ebx + eax - 0x28]
mov eax, dword [esi + 0x5c]
mov esi, dword [ebp - 0x14]
xor eax, dword [ebx + esi - 0x24]
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
xor edi, dword [esi + 0x50]
xor edx, dword [esi + 0x54]
mov eax, edi
mov dword [ebp - 8], edx
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 8]
mul ecx
mov ecx, eax
mov dword [ebp - 0x28], edx
mov eax, edi
mul dword [ebp - 0x1c]
add eax, esi
mov edi, edx
mov esi, eax
adc edi, 0
add esi, ecx
adc edi, 0
mov eax, dword [ebp - 8]
xor ecx, ecx
mul dword [ebp - 0x1c]
or ecx, ebx
add eax, edi
mov edi, dword [ebp - 0x14]
adc edx, 0
add eax, dword [ebp - 0x28]
adc edx, 0
xor ecx, eax
mov eax, dword [edi + 0x20]
xor esi, edx
add ecx, dword [ebp - 0x10]
mov dword [ebp - 0x1c], ecx
adc esi, dword [ebp - 4]
add eax, dword [edi + 0x28]
mov ecx, dword [edi + 0x24]
adc ecx, dword [edi + 0x2c]
xor dword [ebp - 0x1c], eax
xor esi, ecx
mov dword [ebp - 0xc], esi
mov esi, dword [ebp - 0x20]
jmp 0x436490
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x28]
mov edi, dword [edi + 0x10]
xor edi, dword [esi + 0x20]
mov ebx, dword [ebp - 0x14]
xor eax, dword [ebx + 0x1c]
xor ecx, dword [ebx + 0x18]
mov edx, dword [ebx + 0x14]
xor edx, dword [esi + 0x24]
mov dword [ebp - 0x10], eax
mov eax, edi
mov dword [ebp - 4], edx
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 4]
mul ecx
mov ecx, eax
mov dword [ebp - 8], edx
mov eax, edi
mul dword [ebp - 0x10]
add eax, ecx
mov edi, edx
adc edi, 0
add eax, esi
mov dword [ebp - 0x28], eax
adc edi, 0
xor esi, esi
or esi, ebx
mov ebx, eax
mov eax, dword [ebp - 4]
mul dword [ebp - 0x10]
add eax, edi
mov edi, dword [ebp - 0x14]
adc edx, 0
add eax, dword [ebp - 8]
adc edx, 0
xor esi, eax
xor ebx, edx
add esi, dword [ebp - 0x38]
mov edx, dword [ebp - 0x24]
adc ebx, dword [ebp - 0x18]
mov eax, dword [edx + edi - 0x18]
add eax, dword [edx + edi - 0x20]
mov ecx, dword [edx + edi - 0x14]
adc ecx, dword [edx + edi - 0x1c]
xor esi, eax
mov edi, dword [edx + edi - 0x20]
xor ebx, ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x38], esi
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x18], ebx
mov edx, dword [edx + eax - 0x1c]
mov ebx, dword [ebp - 0x24]
mov ecx, dword [esi + 0x38]
xor ecx, dword [ebx + eax - 0x18]
mov eax, dword [esi + 0x3c]
mov esi, dword [ebp - 0x14]
xor eax, dword [ebx + esi - 0x14]
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
xor edi, dword [esi + 0x30]
xor edx, dword [esi + 0x34]
mov eax, edi
mov dword [ebp - 4], edx
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 4]
mul ecx
mov ecx, eax
mov dword [ebp - 0x28], edx
mov eax, edi
mul dword [ebp - 0x10]
add eax, esi
mov edi, edx
mov esi, eax
adc edi, 0
add esi, ecx
adc edi, 0
mov eax, dword [ebp - 4]
xor ecx, ecx
mul dword [ebp - 0x10]
or ecx, ebx
add eax, edi
mov edi, dword [ebp - 0x14]
adc edx, 0
add eax, dword [ebp - 0x28]
adc edx, 0
xor ecx, eax
mov eax, dword [edi + 0x10]
xor esi, edx
add dword [ebp - 0x1c], ecx
mov ecx, dword [edi + 0x14]
adc esi, dword [ebp - 0xc]
add eax, dword [edi + 0x18]
adc ecx, dword [edi + 0x1c]
xor dword [ebp - 0x1c], eax
xor esi, ecx
mov dword [ebp - 8], esi
mov esi, dword [ebp - 0x20]
jmp 0x4365b5
mov eax, dword [ebp - 0x28]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 0xc]
xor eax, dword [edi + 0xc]
mov ecx, dword [esi + 8]
xor ecx, dword [edi + 8]
mov edi, dword [esi]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 4]
xor eax, dword [edx + 4]
xor edi, dword [edx]
mov dword [ebp - 4], eax
mov eax, edi
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 4]
mul ecx
mov ecx, eax
mov dword [ebp - 0x28], edx
mov eax, edi
mul dword [ebp - 0x10]
add eax, esi
mov edi, edx
adc edi, 0
add eax, ecx
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
adc edi, 0
mul dword [ebp - 0x10]
xor esi, esi
or esi, ebx
mov ebx, dword [ebp - 0xc]
add eax, edi
mov edi, dword [ebp - 0x14]
adc edx, 0
add eax, dword [ebp - 0x28]
adc edx, 0
xor esi, eax
xor ebx, edx
mov edx, dword [ebp - 0x24]
add esi, dword [ebp - 0x38]
adc ebx, dword [ebp - 0x18]
mov eax, dword [edx + edi - 8]
add eax, dword [edx + edi - 0x10]
mov ecx, dword [edx + edi - 4]
adc ecx, dword [edx + edi - 0xc]
xor esi, eax
mov dword [ebp - 0x38], esi
xor ebx, ecx
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebp - 0x14]
mov eax, dword [esi + 0x1c]
xor eax, dword [edx + edi - 4]
mov ecx, dword [esi + 0x18]
xor ecx, dword [edx + edi - 8]
mov edi, dword [esi + 0x10]
xor edi, dword [edx + ebx - 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0x14]
xor eax, dword [edx + ebx - 0xc]
mov dword [ebp - 4], eax
mov eax, edi
mul ecx
mov ebx, eax
mov esi, edx
mov eax, dword [ebp - 4]
mul ecx
mov ecx, eax
mov dword [ebp - 0x28], edx
mov eax, edi
mul dword [ebp - 0x10]
add eax, esi
mov edi, edx
adc edi, 0
add eax, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
adc edi, 0
xor esi, esi
or esi, ebx
mul dword [ebp - 0x10]
push 0x16566791
add eax, edi
mov edi, dword [ebp - 0x18]
push 0x9e3779f9
adc edx, 0
add eax, dword [ebp - 0x28]
adc edx, 0
xor esi, eax
xor edi, edx
mov edx, dword [ebp - 0x14]
add esi, dword [ebp - 0x1c]
adc edi, dword [ebp - 8]
mov eax, dword [edx]
add eax, dword [edx + 8]
mov ecx, dword [edx + 4]
adc ecx, dword [edx + 0xc]
xor esi, eax
mov dword [ebp - 0x28], esi
xor edi, ecx
mov esi, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x28]
add esi, ebx
mov ecx, dword [ebp - 0xc]
adc ecx, edi
mov dword [ebp - 0x18], edi
mov edx, ecx
xor eax, eax
shr edx, 5
xor eax, ecx
xor edx, esi
push eax
push edx
call fcn.005128c0
push 0x9e3779b1
push 0x85ebca87
push dword [ebp - 0xc]
mov ecx, edx
xor esi, esi
push dword [ebp - 0x38]
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], esi
call fcn.005128c0
push 0x85ebca77
push 0xc2b2ae63
push dword [ebp - 0x18]
mov esi, eax
mov edi, edx
push ebx
call fcn.005128c0
push 0xc2b2ae3d
push 0x27d4eb4f
add esi, eax
mov eax, dword [ebp - 0x24]
push 0
push eax
adc edi, edx
call fcn.005128c0
add esi, eax
push 0x16566791
adc edi, edx
xor eax, eax
mov ecx, edi
xor eax, edi
push 0x9e3779f9
shr ecx, 5
xor ecx, esi
push eax
push ecx
call fcn.005128c0
xor esi, esi
mov ecx, edx
xor ecx, eax
xor esi, edx
neg ecx
mov dword [ebp - 0x2c], ecx
adc esi, 0
neg esi
mov dword [ebp - 0x28], esi
mov eax, dword [ebp + 8]
movups xmm0, xmmword [ebp - 0x34]
pop edi
pop esi
movups xmmword [eax], xmm0
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 0xf0
ja 0x4367b2
push 0
push 0
push eax
push esi
push ebx
lea eax, [ebp - 0x34]
push edi
push eax
call fcn.004350a0
add esp, 0x1c
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
movups xmmword [eax], xmm0
mov esp, ebp
pop ebp
ret
push eax
push esi
push 0
push 0
push ebx
lea eax, [ebp - 0x48]
push edi
push eax
call fcn.004349e0
add esp, 0x1c
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
movups xmmword [eax], xmm0
mov esp, ebp
pop ebp
ret