Function at 0x43ca10
Capabilities:
Hash data with md5

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x560bf6
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xf8
mov eax, dword [0x5b0514]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [0x5ba980]
lea eax, [ebp - 0xe0]
push 0
push 0x58f310
push str.Config
push eax
mov dword [ebp - 0xe4], esi
call fcn.0043bdc0
mov edi, eax
mov dword [ebp - 4], 0
cmp dword [edi + 0x14], 8
jb 0x43ca86
mov edi, dword [edi]
add esi, 0x508
cmp dword [esi + 0x14], 8
jb 0x43ca94
mov esi, dword [esi]
mov eax, dword [ebp - 0xe4]
add eax, 0x44
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
push eax
push dword [ebp - 0x18]
lea eax, [ebp - 0x54]
push edi
push esi
push 0x58f314
push eax
call fcn.00413710
add esp, 0x18
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0xcc]
cmp edx, 8
jb 0x43cb01
mov ecx, dword [ebp - 0xe0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43caf7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d069
push edx
push ecx
call fcn.00497cc1
add esp, 8
mov ecx, dword [ebp - 0x44]
xor eax, eax
cmp dword [ebp - 0x40], 8
xorps xmm0, xmm0
mov word [ebp - 0xe0], ax
lea eax, [ebp - 0x54]
cmovae eax, dword [ebp - 0x54]
xor edi, edi
push edi
push edi
push edi
push edi
push ecx
push eax
push edi
movlpd qword [ebp - 0x24], xmm0
push edi
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 7
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], edi
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov esi, eax
mov dword [ebp - 0xe8], esi
test esi, esi
jle 0x43cb87
inc esi
push esi
call fcn.00481079
add esp, 4
mov edi, eax
mov dword [ebp - 0x20], edi
push esi
push 0
push edi
call fcn.005219d0
mov esi, dword [ebp - 0xe8]
add esp, 0xc
xor eax, eax
test edi, edi
je 0x43cbae
push eax
push eax
push esi
push edi
push dword [ebp - 0xec]
mov dword [ebp - 0x24], esi
push dword [ebp - 0xf0]
push eax
push eax
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov byte [edi + esi], 0
mov eax, esi
mov byte [ebp - 4], 3
xor ecx, ecx
add eax, edi
mov byte [ebp - 0x60], 0
mov dword [ebp - 0xb4], 0
mov edx, 0xf
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xc8], 0x67452301
mov dword [ebp - 0xc4], 0xefcdab89
mov dword [ebp - 0xc0], 0x98badcfe
mov dword [ebp - 0xbc], 0x10325476
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xcc], edx
mov byte [ebp - 0xe0], cl
cmp edi, eax
je 0x43cc2c
sub eax, edi
lea ecx, [ebp - 0xe0]
push eax
push edi
call fcn.00406610
mov edx, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xd0]
cmp edx, 0x10
lea eax, [ebp - 0xe0]
push ecx
cmovae eax, dword [ebp - 0xe0]
lea ecx, [ebp - 0xc8]
push eax
call fcn.004092b0
mov edx, dword [ebp - 0xcc]
cmp edx, 0x10
jb 0x43cc83
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43cc79
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d06e
push edx
push ecx
call fcn.00497cc1
add esp, 8
lea eax, [ebp - 0xe0]
push eax
lea ecx, [ebp - 0xc8]
call fcn.00409bc0
mov edi, dword [ebp - 0xe4]
mov esi, eax
add edi, 0x520
cmp edi, esi
je 0x43ccd1
mov ecx, edi
call fcn.00407320
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0xcc]
cmp edx, 8
jb 0x43cd11
mov ecx, dword [ebp - 0xe0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43cd07
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d073
push edx
push ecx
call fcn.00497cc1
add esp, 8
push 0
push 0x58f310
push str.Config
lea eax, [ebp - 0xe0]
push eax
call fcn.0043bdc0
mov byte [ebp - 4], 4
cmp dword [eax + 0x14], 8
jb 0x43cd35
mov eax, dword [eax]
push dword [ebp - 0x18]
push eax
lea eax, [ebp - 0x3c]
push 0x58f33c
push eax
call fcn.00413710
add esp, 0x10
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0xcc]
cmp edx, 8
jb 0x43cd8e
mov ecx, dword [ebp - 0xe0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43cd84
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d078
push edx
push ecx
call fcn.00497cc1
add esp, 8
mov ecx, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x28], 8
xorps xmm0, xmm0
mov word [ebp - 0xe0], ax
lea eax, [ebp - 0x3c]
cmovae eax, dword [ebp - 0x3c]
xor edi, edi
push edi
push edi
push edi
push edi
push ecx
push eax
push edi
movlpd qword [ebp - 0x1c], xmm0
push edi
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 7
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], edi
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov esi, eax
mov dword [ebp - 0xf0], esi
test esi, esi
jle 0x43ce14
inc esi
push esi
call fcn.00481079
add esp, 4
mov edi, eax
mov dword [ebp - 0x18], edi
push esi
push 0
push edi
call fcn.005219d0
mov esi, dword [ebp - 0xf0]
add esp, 0xc
xor eax, eax
test edi, edi
je 0x43ce3b
push eax
push eax
push esi
push edi
push dword [ebp - 0xec]
mov dword [ebp - 0x1c], esi
push dword [ebp - 0xe8]
push eax
push eax
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov byte [edi + esi], 0
mov eax, esi
mov byte [ebp - 4], 7
xor ecx, ecx
add eax, edi
mov byte [ebp - 0x60], 0
mov dword [ebp - 0xb4], 0
mov edx, 0xf
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xc8], 0x67452301
mov dword [ebp - 0xc4], 0xefcdab89
mov dword [ebp - 0xc0], 0x98badcfe
mov dword [ebp - 0xbc], 0x10325476
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xcc], edx
mov byte [ebp - 0xe0], cl
cmp edi, eax
je 0x43ceb9
sub eax, edi
lea ecx, [ebp - 0xe0]
push eax
push edi
call fcn.00406610
mov edx, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xd0]
cmp edx, 0x10
lea eax, [ebp - 0xe0]
push ecx
cmovae eax, dword [ebp - 0xe0]
lea ecx, [ebp - 0xc8]
push eax
call fcn.004092b0
mov edx, dword [ebp - 0xcc]
cmp edx, 0x10
jb 0x43cf10
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43cf06
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d07d
push edx
push ecx
call fcn.00497cc1
add esp, 8
lea eax, [ebp - 0x108]
push eax
lea ecx, [ebp - 0xc8]
call fcn.00409bc0
mov esi, eax
mov eax, dword [ebp - 0xe4]
add eax, 0x538
cmp eax, esi
je 0x43cf6a
mov ecx, eax
call fcn.00407320
movups xmm0, xmmword [esi]
mov eax, dword [ebp - 0xe4]
movups xmmword [eax + 0x538], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [eax + 0x548], xmm0
xor eax, eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0xf4]
cmp edx, 8
jb 0x43cfaa
mov ecx, dword [ebp - 0x108]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43cfa0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d082
push edx
push ecx
call fcn.00497cc1
add esp, 8
test edi, edi
je 0x43cfb7
push edi
call fcn.0041f3e0
add esp, 4
mov edx, dword [ebp - 0x28]
cmp edx, 8
jb 0x43cff1
mov ecx, dword [ebp - 0x3c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43cfe7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d087
push edx
push ecx
call fcn.00497cc1
add esp, 8
xor eax, eax
mov dword [ebp - 0x2c], 0
mov word [ebp - 0x3c], ax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], 7
test eax, eax
je 0x43d015
push eax
call fcn.0041f3e0
add esp, 4
mov edx, dword [ebp - 0x40]
cmp edx, 8
jb 0x43d04b
mov ecx, dword [ebp - 0x54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43d041
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d08c
push edx
push ecx
call fcn.00497cc1
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00497cb0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00524999
call fcn.00524999
call fcn.00524999
call fcn.00524999
call fcn.00524999
call fcn.00524999
call fcn.00524999
call fcn.00524999
int3