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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov ecx, dword [ebp + 8]
push ebx
push esi
push edi
movzx edx, byte [ecx]
movzx eax, byte [ecx + 1]
movzx esi, byte [ecx + 4]
movzx ebx, byte [ecx + 8]
movzx edi, byte [ecx + 0xc]
shl edx, 8
or edx, eax
shl esi, 8
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
shl ebx, 8
movzx eax, byte [ecx + 3]
shl edx, 8
or edx, eax
shl edi, 8
movzx eax, byte [ecx + 5]
or esi, eax
mov dword [ebp - 0xc], edx
movzx eax, byte [ecx + 6]
shl esi, 8
or esi, eax
movzx eax, byte [ecx + 7]
shl esi, 8
or esi, eax
movzx eax, byte [ecx + 9]
or ebx, eax
movzx eax, byte [ecx + 0xa]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0xb]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0xd]
or edi, eax
mov dword [ebp + 8], ebx
movzx eax, byte [ecx + 0xe]
add ebx, 0x61c88647
add edx, ebx
shl edi, 8
or edi, eax
mov ebx, esi
movzx eax, byte [ecx + 0xf]
mov ecx, edx
shr ecx, 0x18
shl edi, 8
or edi, eax
mov eax, edx
shr eax, 0x10
sub ebx, edi
mov ecx, dword [ecx*4 + 0x6594e0]
sub ebx, 0x61c88647
movzx eax, al
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 4], ecx
mov edx, esi
mov ecx, dword [ebp - 0xc]
mov eax, ecx
shr eax, 8
shl ecx, 0x18
shl edx, 0x18
xor edx, eax
shr esi, 8
xor ecx, esi
mov dword [ebp - 8], edx
mov esi, dword [ebp + 8]
mov ebx, ecx
mov dword [ebp - 0xc], ecx
add edx, 0xc3910c8d
add edx, esi
sub ebx, edi
mov ecx, edx
mov eax, edx
shr eax, 0x10
add ebx, 0x3c6ef373
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 8], ecx
mov ecx, ebx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, esi
mov dword [edx + 0xc], ecx
mov ecx, edi
shr ecx, 0x18
shl eax, 8
xor ecx, eax
shr esi, 0x18
shl edi, 8
xor esi, edi
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 8]
mov dword [ebp + 8], esi
mov esi, dword [ebp - 0xc]
mov ebx, esi
sub ebx, dword [ebp + 8]
lea edx, [edi - 0x78dde6e6]
add ebx, 0x78dde6e6
add edx, ecx
mov ecx, edx
mov eax, edx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x10], ecx
mov ecx, ebx
shr ecx, 0x18
shr eax, 0x10
mov ecx, dword [ecx*4 + 0x6594e0]
movzx eax, al
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, edi
mov dword [edx + 0x14], ecx
mov ecx, esi
shr eax, 8
shl ecx, 0x18
xor ecx, eax
shr esi, 8
mov dword [ebp - 4], ecx
shl edi, 0x18
xor edi, esi
mov esi, dword [ebp - 0x10]
mov ebx, edi
sub ebx, dword [ebp + 8]
sub ebx, 0xe443234
lea edx, [esi + 0xe443234]
add edx, ecx
mov ecx, edx
mov eax, edx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x18], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
mov ebx, edi
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, esi
mov dword [edx + 0x1c], ecx
mov edx, dword [ebp + 8]
mov ecx, edx
shl eax, 8
shl edx, 8
shr ecx, 0x18
xor ecx, eax
shr esi, 0x18
xor esi, edx
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 4]
sub ebx, esi
add edx, 0x1c886467
sub ebx, 0x1c886467
add edx, ecx
mov ecx, edx
mov eax, edx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x20], ecx
mov ecx, ebx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x24], ecx
mov edx, edi
mov ecx, dword [ebp - 4]
mov eax, ecx
shr eax, 8
shl ecx, 0x18
shl edx, 0x18
xor edx, eax
shr edi, 8
xor ecx, edi
mov dword [ebp + 8], edx
mov edi, dword [ebp - 0x10]
mov ebx, ecx
mov dword [ebp - 4], ecx
add edx, 0x3910c8cd
add edx, edi
sub ebx, esi
mov ecx, edx
mov eax, edx
shr ecx, 0x18
sub ebx, 0x3910c8cd
shr eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x28], ecx
mov ecx, ebx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, edi
mov dword [edx + 0x2c], ecx
mov ecx, esi
mov edx, dword [ebp + 8]
shl esi, 8
add edx, 0x72219199
shr edi, 0x18
shr ecx, 0x18
xor edi, esi
mov esi, dword [ebp - 4]
mov ebx, esi
shl eax, 8
sub ebx, edi
xor ecx, eax
add edx, ecx
mov dword [ebp - 8], ecx
sub ebx, 0x72219199
mov ecx, edx
shr ecx, 0x18
mov eax, edx
shr eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x30], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x34], ecx
mov edx, esi
mov ecx, dword [ebp + 8]
mov eax, ecx
shr eax, 8
shl ecx, 0x18
shl edx, 0x18
xor edx, eax
shr esi, 8
xor ecx, esi
mov dword [ebp - 0x10], edx
mov esi, dword [ebp - 8]
mov ebx, ecx
mov dword [ebp + 8], ecx
add esi, 0xe4432331
add edx, esi
sub ebx, edi
mov ecx, edx
mov eax, edx
shr eax, 0x10
add ebx, 0x1bbcdccf
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x38], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x3c], ecx
mov edx, edi
mov ecx, dword [ebp - 8]
mov eax, ecx
shr edx, 0x18
shl eax, 8
xor edx, eax
mov dword [ebp - 4], edx
mov esi, dword [ebp + 8]
add edx, 0xc8864662
shr ecx, 0x18
mov ebx, esi
shl edi, 8
xor ecx, edi
mov edi, dword [ebp - 0x10]
sub ebx, ecx
mov dword [ebp - 8], ecx
add edx, edi
add ebx, 0x3779b99e
mov ecx, edx
mov eax, edx
shr eax, 0x10
movzx eax, al
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x40], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, edi
mov dword [edx + 0x44], ecx
mov ecx, esi
mov edx, dword [ebp - 4]
shr eax, 8
add edx, 0x910c8cc4
shl ecx, 0x18
xor ecx, eax
shr esi, 8
add edx, ecx
mov dword [ebp - 0xc], ecx
mov ecx, edx
shl edi, 0x18
shr ecx, 0x18
mov eax, edx
shr eax, 0x10
xor edi, esi
mov esi, dword [ebp - 8]
mov ebx, edi
movzx eax, al
sub ebx, esi
mov ecx, dword [ecx*4 + 0x6594e0]
add ebx, 0x6ef3733c
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x48], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
mov ebx, edi
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x4c], ecx
mov edx, esi
mov ecx, dword [ebp - 4]
mov eax, ecx
shl eax, 8
shr ecx, 0x18
shr edx, 0x18
xor edx, eax
shl esi, 8
xor ecx, esi
mov dword [ebp + 8], edx
mov esi, dword [ebp - 0xc]
sub ebx, ecx
mov dword [ebp - 4], ecx
add edx, 0x22191988
add edx, esi
sub ebx, 0x22191988
mov ecx, edx
mov eax, edx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x50], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, esi
mov dword [edx + 0x54], ecx
mov ecx, edi
mov edx, dword [ebp + 8]
shr eax, 8
add edx, 0x4432330f
shl ecx, 0x18
xor ecx, eax
shr edi, 8
add edx, ecx
mov dword [ebp - 8], ecx
mov ecx, edx
shl esi, 0x18
shr ecx, 0x18
mov eax, edx
shr eax, 0x10
xor esi, edi
mov edi, dword [ebp - 4]
mov ebx, esi
movzx eax, al
sub ebx, edi
mov ecx, dword [ecx*4 + 0x6594e0]
sub ebx, 0x4432330f
mov dword [ebp - 0xc], esi
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x58], ecx
mov eax, ebx
shr eax, 0x10
mov ecx, ebx
shr ecx, 0x18
mov esi, edi
movzx eax, al
shl edi, 8
shr esi, 0x18
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
mov ebx, dword [ebp - 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x5c], ecx
mov ecx, dword [ebp + 8]
mov eax, ecx
mov edx, dword [ebp - 8]
shl eax, 8
add edx, 0x8864661d
xor esi, eax
shr ecx, 0x18
xor ecx, edi
mov dword [ebp - 4], esi
sub ebx, ecx
mov dword [ebp + 8], ecx
add edx, esi
add ebx, 0x779b99e3
mov ecx, edx
mov eax, edx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x60], ecx
mov ecx, ebx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
mov ebx, dword [ebp - 8]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x64], ecx
mov ecx, dword [ebp - 0xc]
mov edi, ecx
shr eax, 8
shl edi, 0x18
xor edi, eax
shl ebx, 0x18
shr ecx, 8
xor ebx, ecx
mov dword [ebp - 0x10], edi
mov dword [ebp - 8], ebx
sub ebx, dword [ebp + 8]
lea edx, [edi + 0x10c8cc3a]
add edx, esi
sub ebx, 0x10c8cc3a
mov ecx, edx
mov eax, edx
shr ecx, 0x18
shr eax, 0x10
mov ecx, dword [ecx*4 + 0x6594e0]
movzx eax, al
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x68], ecx
mov ecx, ebx
shr eax, 0x10
movzx eax, al
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x6c], ecx
mov ecx, dword [ebp - 4]
mov eax, ecx
mov edx, dword [ebp + 8]
mov esi, edx
shl eax, 8
shr ecx, 0x18
shl edx, 8
xor ecx, edx
shr esi, 0x18
xor esi, eax
mov dword [ebp - 4], ecx
lea edx, [edi + 0x21919873]
mov edi, dword [ebp - 8]
add edx, esi
mov ebx, edi
sub ebx, ecx
mov eax, edx
shr eax, 0x10
mov ecx, edx
movzx eax, al
sub ebx, 0x21919873
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x70], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
mov ebx, dword [ebp - 0x10]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x74], ecx
mov edx, edi
shl edx, 0x18
shr eax, 8
shl ebx, 0x18
xor edx, eax
shr edi, 8
xor ebx, edi
add edx, 0x432330e5
sub ebx, dword [ebp - 4]
add edx, esi
mov ecx, edx
mov eax, edx
shr eax, 0x10
sub ebx, 0x432330e5
shr ecx, 0x18
movzx eax, al
pop edi
pop esi
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, dl
mov edx, dword [ebp + 0xc]
xor ecx, dword [eax*4 + 0x6588e0]
mov eax, ebx
mov dword [edx + 0x78], ecx
mov ecx, ebx
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov ecx, dword [ecx*4 + 0x6594e0]
xor ecx, dword [eax*4 + 0x6590e0]
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x658ce0]
movzx eax, bl
pop ebx
xor ecx, dword [eax*4 + 0x6588e0]
mov dword [edx + 0x7c], ecx
mov esp, ebp
pop ebp
ret