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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x18
call fcn.00628ef0
movzx eax, byte [ecx + 1]
mov dword [ebp - 4], edx
movzx edx, byte [ecx]
shl edx, 8
or edx, eax
movzx eax, byte [ecx + 2]
push ebx
movzx ebx, byte [ecx + 8]
shl edx, 8
or edx, eax
shl ebx, 8
movzx eax, byte [ecx + 3]
push esi
movzx esi, byte [ecx + 4]
shl edx, 8
or edx, eax
shl esi, 8
movzx eax, byte [ecx + 5]
or esi, eax
mov dword [ebp - 0x14], 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]
push edi
movzx edi, byte [ecx + 0xc]
shl ebx, 8
or ebx, eax
shl edi, 8
movzx eax, byte [ecx + 0xd]
or edi, eax
mov dword [ebp - 8], ebx
movzx eax, byte [ecx + 0xe]
add ebx, 0x61c88647
shl edi, 8
add edx, ebx
or edi, eax
mov ebx, esi
movzx eax, byte [ecx + 0xf]
shl edi, 8
or edi, eax
mov eax, edx
shr eax, 0x10
sub ebx, edi
movzx ecx, al
sub ebx, 0x61c88647
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
mov dword [edx + 4], ecx
mov edx, esi
mov ecx, dword [ebp - 0x14]
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 - 0x14], ecx
add edx, 0xc3910c8d
add edx, esi
sub ebx, edi
mov eax, edx
add ebx, 0x3c6ef373
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 8], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, esi
mov dword [edx + 0xc], ecx
mov ecx, edi
shl eax, 8
shr esi, 0x18
shl edi, 8
xor esi, edi
shr ecx, 0x18
mov edi, dword [ebp - 0x10]
xor ecx, eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 8], esi
mov esi, dword [ebp - 0x14]
mov ebx, esi
sub ebx, dword [ebp - 8]
lea edx, [edi - 0x78dde6e6]
add edx, ecx
add ebx, 0x78dde6e6
mov eax, edx
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
mov dword [edx + 0x10], ecx
shr eax, 0x10
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
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 - 0xc], ecx
shl edi, 0x18
xor edi, esi
mov esi, dword [ebp - 0x18]
mov ebx, edi
sub ebx, dword [ebp - 8]
sub ebx, 0xe443234
lea edx, [esi + 0xe443234]
add edx, ecx
mov eax, edx
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x18], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
mov ebx, edi
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, esi
mov dword [edx + 0x1c], ecx
mov edx, dword [ebp - 8]
mov ecx, edx
shl eax, 8
shl edx, 8
shr esi, 0x18
xor esi, edx
shr ecx, 0x18
mov edx, dword [ebp - 0xc]
xor ecx, eax
add edx, 0x1c886467
mov dword [ebp - 0x18], ecx
add edx, ecx
sub ebx, esi
mov eax, edx
sub ebx, 0x1c886467
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
mov dword [edx + 0x20], ecx
shr eax, 0x10
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
mov dword [edx + 0x24], ecx
mov edx, edi
mov ecx, dword [ebp - 0xc]
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 - 0x18]
mov ebx, ecx
mov dword [ebp - 0xc], ecx
add edx, 0x3910c8cd
add edx, edi
sub ebx, esi
mov eax, edx
sub ebx, 0x3910c8cd
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
mov dword [edx + 0x28], ecx
shr eax, 0x10
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
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 - 0xc]
mov ebx, esi
shl eax, 8
xor ecx, eax
add edx, ecx
mov dword [ebp - 0x10], ecx
sub ebx, edi
mov eax, edx
sub ebx, 0x72219199
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x30], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
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 - 0x18], edx
mov esi, dword [ebp - 0x10]
mov ebx, ecx
mov dword [ebp - 8], ecx
add esi, 0xe4432331
add edx, esi
sub ebx, edi
mov eax, edx
add ebx, 0x1bbcdccf
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x38], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
mov dword [edx + 0x3c], ecx
mov edx, edi
mov ecx, dword [ebp - 0x10]
mov eax, ecx
shr edx, 0x18
shl eax, 8
xor edx, eax
mov esi, dword [ebp - 8]
shr ecx, 0x18
mov ebx, esi
mov dword [ebp - 0xc], edx
add edx, 0xc8864662
shl edi, 8
xor ecx, edi
mov edi, dword [ebp - 0x18]
sub ebx, ecx
mov dword [ebp - 0x10], ecx
add edx, edi
add ebx, 0x3779b99e
mov eax, edx
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x40], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, edi
mov dword [edx + 0x44], ecx
mov ecx, esi
mov edx, dword [ebp - 0xc]
shr eax, 8
add edx, 0x910c8cc4
shl ecx, 0x18
xor ecx, eax
shr esi, 8
add edx, ecx
mov dword [ebp - 0x14], ecx
mov eax, edx
shl edi, 0x18
shr eax, 0x10
xor edi, esi
mov esi, dword [ebp - 0x10]
mov ebx, edi
movzx ecx, al
sub ebx, esi
mov eax, edx
add ebx, 0x6ef3733c
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x48], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
mov ebx, edi
xor ecx, dword [eax*4 + 0x6c8780]
mov dword [edx + 0x4c], ecx
mov edx, esi
mov ecx, dword [ebp - 0xc]
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 - 0x14]
sub ebx, ecx
mov dword [ebp - 0xc], ecx
add edx, 0x22191988
add edx, esi
sub ebx, 0x22191988
mov eax, edx
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x50], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
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 - 0x10], ecx
mov eax, edx
shl esi, 0x18
shr eax, 0x10
xor esi, edi
mov edi, dword [ebp - 0xc]
mov ebx, esi
movzx ecx, al
sub ebx, edi
mov eax, edx
mov dword [ebp - 0x14], esi
shr eax, 8
sub ebx, 0x4432330f
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
xor ecx, dword [eax*4 + 0x6c8780]
mov esi, edi
mov edx, dword [ebp - 4]
mov eax, ebx
shr eax, 0x10
shr esi, 0x18
shl edi, 8
mov dword [edx + 0x58], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
mov ebx, dword [ebp - 0x14]
xor ecx, dword [eax*4 + 0x6c8780]
mov dword [edx + 0x5c], ecx
mov ecx, dword [ebp - 8]
mov eax, ecx
mov edx, dword [ebp - 0x10]
shl eax, 8
add edx, 0x8864661d
xor esi, eax
shr ecx, 0x18
xor ecx, edi
mov dword [ebp - 0xc], esi
sub ebx, ecx
mov dword [ebp - 8], ecx
add edx, esi
add ebx, 0x779b99e3
mov eax, edx
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x60], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
mov ebx, dword [ebp - 0x10]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
mov dword [edx + 0x64], ecx
mov ecx, dword [ebp - 0x14]
mov edi, ecx
shr eax, 8
shl edi, 0x18
xor edi, eax
shl ebx, 0x18
shr ecx, 8
xor ebx, ecx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x10], ebx
sub ebx, dword [ebp - 8]
lea edx, [edi + 0x10c8cc3a]
add edx, esi
sub ebx, 0x10c8cc3a
mov eax, edx
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x68], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
xor ecx, dword [eax*4 + 0x6c8780]
mov dword [edx + 0x6c], ecx
mov ecx, dword [ebp - 0xc]
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 - 0xc], ecx
lea edx, [edi + 0x21919873]
mov edi, dword [ebp - 0x10]
add edx, esi
mov ebx, edi
sub ebx, ecx
mov eax, edx
shr eax, 0x10
sub ebx, 0x21919873
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x70], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
mov ebx, dword [ebp - 0x18]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
mov dword [edx + 0x74], ecx
mov edx, edi
shl edx, 0x18
shr eax, 8
xor edx, eax
shl ebx, 0x18
shr edi, 8
add edx, 0x432330e5
xor ebx, edi
sub ebx, dword [ebp - 0xc]
add edx, esi
mov eax, edx
sub ebx, 0x432330e5
shr eax, 0x10
movzx ecx, al
mov eax, edx
shr eax, 8
movzx eax, al
pop edi
mov ecx, dword [ecx*4 + 0x6c8f80]
pop esi
xor ecx, dword [eax*4 + str.0_b88]
mov eax, edx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, dl
mov edx, dword [ebp - 4]
xor ecx, dword [eax*4 + 0x6c8780]
mov eax, ebx
shr eax, 0x10
mov dword [edx + 0x78], ecx
movzx ecx, al
mov eax, ebx
shr eax, 8
movzx eax, al
mov ecx, dword [ecx*4 + 0x6c8f80]
xor ecx, dword [eax*4 + str.0_b88]
mov eax, ebx
shr eax, 0x18
xor ecx, dword [eax*4 + str.880_b_]
movzx eax, bl
pop ebx
xor ecx, dword [eax*4 + 0x6c8780]
mov dword [edx + 0x7c], ecx
mov esp, ebp
pop ebp
ret