Function at 0x45fa50
Capabilities:
Hash data with md5

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffb8
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov byte [ebp - 5], cl
mov ebx, edx
mov dword [ebp - 4], eax
lea esi, [ebp - 0x20]
lea edi, [ebp - 0x24]
xor eax, eax
push ebp
push 0x4603f4
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x2c]
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0045f8cc
mov dword [ebp - 0x1c], 0x67452301
mov dword [esi], 0xefcdab89
mov dword [edi], 0x98badcfe
mov dword [ebp - 0x28], 0x10325476
xor ebx, ebx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xc], eax
mov eax, dword [esi]
mov dword [ebp - 0x10], eax
mov eax, dword [edi]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4]
push eax
push 7
push 0xd76aa478
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 4]
push eax
push 0xc
push 0xe8c7b756
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 8]
push eax
push 0x11
push 0x242070db
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0xc]
push eax
push 0x16
push 0xc1bdceee
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x10]
push eax
push 7
push 0xf57c0faf
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x14]
push eax
push 0xc
push 0x4787c62a
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x18]
push eax
push 0x11
push 0xa8304613
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x1c]
push eax
push 0x16
push 0xfd469501
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x20]
push eax
push 7
push 0x698098d8
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x24]
push eax
push 0xc
push 0x8b44f7af
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x28]
push eax
push 0x11
push 0xffff5bb1
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x2c]
push eax
push 0x16
push 0x895cd7be
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x30]
push eax
push 7
push 0x6b901122
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x34]
push eax
push 0xc
push 0xfd987193
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x38]
push eax
push 0x11
push 0xa679438e
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x3c]
push eax
push 0x16
push 0x49b40821
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f950
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 4]
push eax
push 5
push 0xf61e2562
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x18]
push eax
push 9
push 0xc040b340
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x2c]
push eax
push 0xe
push 0x265e5a51
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4]
push eax
push 0x14
push 0xe9b6c7aa
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x14]
push eax
push 5
push 0xd62f105d
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x28]
push eax
push 9
push 0x2441453
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x3c]
push eax
push 0xe
push 0xd8a1e681
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x10]
push eax
push 0x14
push 0xe7d3fbc8
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x24]
push eax
push 5
push 0x21e1cde6
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x38]
push eax
push 9
push 0xc33707d6
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0xc]
push eax
push 0xe
push 0xf4d50d87
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x20]
push eax
push 0x14
push 0x455a14ed
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x34]
push eax
push 5
push 0xa9e3e905
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 8]
push eax
push 9
push 0xfcefa3f8
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x1c]
push eax
push 0xe
push 0x676f02d9
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x30]
push eax
push 0x14
push 0x8d2a4c8a
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f990
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x14]
push eax
push 4
push 0xfffa3942
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x20]
push eax
push 0xb
push 0x8771f681
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x2c]
push eax
push 0x10
push 0x6d9d6122
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x38]
push eax
push 0x17
push 0xfde5380c
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 4]
push eax
push 4
push 0xa4beea44
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x10]
push eax
push 0xb
push 0x4bdecfa9
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x1c]
push eax
push 0x10
push 0xf6bb4b60
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x28]
push eax
push 0x17
push 0xbebfbc70
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x34]
push eax
push 4
push 0x289b7ec6
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4]
push eax
push 0xb
push 0xeaa127fa
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0xc]
push eax
push 0x10
push 0xd4ef3085
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x18]
push eax
push 0x17
push 0x4881d05
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x24]
push eax
push 4
push 0xd9d4d039
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x30]
push eax
push 0xb
push 0xe6db99e5
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x3c]
push eax
push 0x10
push 0x1fa27cf8
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 8]
push eax
push 0x17
push 0xc4ac5665
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045f9d0
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4]
push eax
push 6
push 0xf4292244
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x1c]
push eax
push 0xa
push 0x432aff97
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x38]
push eax
push 0xf
push 0xab9423a7
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x14]
push eax
push 0x15
push 0xfc93a039
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x30]
push eax
push 6
push 0x655b59c3
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0xc]
push eax
push 0xa
push 0x8f0ccc92
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x28]
push eax
push 0xf
push 0xffeff47d
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 4]
push eax
push 0x15
push 0x85845dd1
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x20]
push eax
push 6
push 0x6fa87e4f
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x3c]
push eax
push 0xa
push 0xfe2ce6e0
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x18]
push eax
push 0xf
push 0xa3014314
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x34]
push eax
push 0x15
push 0x4e0811a1
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x10]
push eax
push 6
push 0xf7537e82
lea eax, [ebp - 0x1c]
mov ecx, dword [edi]
mov edx, dword [esi]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [edi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x2c]
push eax
push 0xa
push 0xbd3af235
lea eax, [ebp - 0x28]
mov ecx, dword [esi]
mov edx, dword [ebp - 0x1c]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [esi]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 8]
push eax
push 0xf
push 0x2ad7d2bb
mov eax, edi
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
call fcn.0045fa10
pop ecx
push ebp
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + ebx*4 + 0x24]
push eax
push 0x15
push 0xeb86d391
mov eax, esi
mov ecx, dword [ebp - 0x28]
mov edx, dword [edi]
call fcn.0045fa10
pop ecx
mov eax, dword [ebp - 0xc]
add dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x10]
add dword [esi], eax
mov eax, dword [ebp - 0x14]
add dword [edi], eax
mov eax, dword [ebp - 0x18]
add dword [ebp - 0x28], eax
add ebx, 0x10
mov eax, dword [ebp - 0x2c]
call fcn.004052dc
cmp ebx, eax
jle 0x45fab8
cmp byte [ebp - 5], 0
je 0x46038a
lea ecx, [ebp - 0x34]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.0046041c
push dword [ebp - 0x34]
lea ecx, [ebp - 0x38]
mov edx, dword [esi]
mov eax, dword [ebp - 4]
call fcn.0046041c
push dword [ebp - 0x38]
lea ecx, [ebp - 0x3c]
mov edx, dword [edi]
mov eax, dword [ebp - 4]
call fcn.0046041c
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x40]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
call fcn.0046041c
push dword [ebp - 0x40]
lea eax, [ebp - 0x30]
mov edx, 4
call fcn.004044b0
jmp 0x4603b4
lea ecx, [ebp - 0x44]
mov edx, dword [edi]
mov eax, dword [ebp - 4]
call fcn.0046041c
mov eax, dword [ebp - 0x44]
push eax
lea ecx, [ebp - 0x48]
mov edx, dword [esi]
mov eax, dword [ebp - 4]
call fcn.0046041c
mov edx, dword [ebp - 0x48]
lea eax, [ebp - 0x30]
pop ecx
call fcn.0040443c
mov eax, dword [ebp - 0x30]
call fcn.004045f0
call fcn.00408ed4
mov edx, eax
mov eax, dword [ebp + 8]
call fcn.00404328
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4603fb
lea eax, [ebp - 0x48]
mov edx, 7
call fcn.00404144
lea eax, [ebp - 0x2c]
mov edx, dword [0x45f6e4]
call fcn.0040549c
ret