Function at 0x402dc0
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x435c06
mov eax, dword fs:[0]
push eax
sub esp, 0xac
mov eax, dword [0x443104]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, edx
mov eax, ecx
mov dword [ebp - 0x94], eax
mov dword [ebp - 0xb4], eax
mov edi, dword [ebp + 8]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xa4], 0
mov dword [eax], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea ecx, [eax + 0x18]
mov dword [ebp - 4], 1
mov dword [ecx], 0
mov dword [ebp - 0x98], ecx
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea ebx, [eax + 0x30]
mov dword [ebx], 0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0xf
mov byte [ebx], 0
push 0x403d00
push 0x404590
push 4
add eax, 0x48
mov byte [ebp - 4], 3
push 0x18
push eax
mov dword [ebp - 0xac], eax
call fcn.0041c295
mov eax, dword [ebp - 0x94]
add eax, 0xac
mov dword [ebp - 0xb4], eax
mov dword [eax], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
mov ecx, esi
mov dword [ebp - 4], 4
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402ef0
sub ecx, edx
push ecx
mov ecx, dword [ebp - 0x94]
push esi
call fcn.004043d0
mov ecx, edi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402f10
sub ecx, edx
push ecx
mov ecx, dword [ebp - 0x98]
push edi
call fcn.004043d0
mov edx, esi
lea ecx, [ebp - 0x28]
call fcn.004040a0
push eax
lea ecx, [ebp - 0x58]
call fcn.00404510
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x402f6d
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402f63
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
add esp, 8
cmp dword [ebp - 0x44], 0x10
lea esi, [ebp - 0x58]
cmovae esi, dword [ebp - 0x58]
push esi
push str.60_.48s
push 0
push 0
call fcn.004014d0
xor ecx, ecx
mov dword [ebp - 0x28], 0
add eax, 1
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
setb cl
add esp, 0xc
neg ecx
or ecx, eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00404290
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
push esi
cmovae eax, dword [ebp - 0x28]
push str.60_.48s
push dword [ebp - 0x18]
mov dword [ebp - 0xa4], 5
push eax
call fcn.004014d0
add esp, 0x10
nop dword [eax + eax]
mov esi, dword [ebp - 0x14]
lea ecx, [ebp - 0x28]
mov edi, dword [ebp - 0x28]
lea eax, [ebp - 0x28]
mov edx, dword [ebp - 0x18]
cmp esi, 0x10
cmovae ecx, edi
dec edx
cmp byte [edx + ecx], 0
jne 0x40300b
cmp esi, 0x10
mov dword [ebp - 0x18], edx
cmovae eax, edi
mov byte [eax + edx], 0
jmp 0x402fe0
mov esi, dword [ebp - 0x94]
push eax
lea edi, [esi + 0x90]
mov ecx, edi
mov dword [ebp - 0xa8], edi
call fcn.00404510
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x403059
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40304f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b1c
push ecx
push edx
call fcn.0041c264
add esp, 8
cmp dword [edi + 0x14], 0x10
mov edx, edi
jb 0x403063
mov edx, dword [edi]
lea ecx, [ebp - 0x28]
call fcn.004040a0
push eax
lea ecx, [esi + 0x48]
call fcn.00404510
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x4030a8
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40309e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b21
push ecx
push edx
call fcn.0041c264
add esp, 8
cmp dword [esi + 0x5c], 0x10
lea eax, [esi + 0x48]
jb 0x4030b4
mov eax, dword [esi + 0x48]
cmp dword [ebp - 0x44], 0x10
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x98], eax
mov edx, str._.16s_.4s
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
add eax, 0x30
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.00405360
add esp, 8
mov ecx, ebx
push eax
call fcn.00404510
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x403130
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40311e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b26
push ecx
push edx
call fcn.0041c264
add esp, 8
nop dword [eax + eax]
cmp dword [esi + 0x2c], 0x10
lea edx, [esi + 0x18]
jb 0x40313c
mov edx, dword [esi + 0x18]
push dword [esi + 0x28]
lea ecx, [ebp - 0x70]
call fcn.00403db0
push ecx
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x70]
call fcn.004018a0
sub esp, 8
mov byte [ebp - 4], 5
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0x64]
push eax
call fcn.004018a0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x18]
cmp ecx, 0x3c
jae 0x4031fe
mov esi, dword [ebp - 0x14]
lea edx, [ebp - 0x28]
mov ebx, dword [ebp - 0x28]
lea eax, [ebp - 0x28]
mov edi, 0x3c
sub edi, ecx
cmp esi, 0x10
setae byte [ebp - 0x89]
cmovae edx, ebx
cmp byte [ebp - 0x89], 0
cmovne eax, ebx
sub edx, eax
cmp ecx, edx
jb 0x403b2b
sub esi, ecx
cmp edi, esi
ja 0x4031e2
cmp byte [ebp - 0x89], 0
lea eax, [ecx + edi]
lea esi, [ebp - 0x28]
mov dword [ebp - 0x18], eax
cmovne esi, ebx
sub ecx, edx
add esi, edx
inc ecx
push ecx
push esi
lea eax, [esi + edi]
push eax
call fcn.0041e8a0
push edi
push 0x30
push esi
call fcn.0041d1c0
add esp, 0x18
jmp 0x4031fb
push ecx
push edi
push edx
mov byte [ebp - 0x98], 0
lea ecx, [ebp - 0x28]
push dword [ebp - 0x98]
push edi
call fcn.00405580
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x30]
cmp edx, 0x3c
jae 0x403294
mov esi, dword [ebp - 0x2c]
lea ecx, [ebp - 0x40]
mov ebx, dword [ebp - 0x40]
lea eax, [ebp - 0x40]
mov edi, 0x3c
sub edi, edx
cmp esi, 0x10
setae byte [ebp - 0x89]
cmovae ecx, ebx
cmp byte [ebp - 0x89], 0
cmovne eax, ebx
sub ecx, eax
cmp edx, ecx
jb 0x403b2b
sub esi, edx
cmp edi, esi
ja 0x403275
cmp byte [ebp - 0x89], 0
lea eax, [edx + edi]
lea esi, [ebp - 0x40]
mov dword [ebp - 0x30], eax
cmovne esi, ebx
sub edx, ecx
add esi, ecx
inc edx
push edx
push esi
lea eax, [esi + edi]
push eax
call fcn.0041e8a0
push edi
push 0x30
push esi
call fcn.0041d1c0
add esp, 0x18
jmp 0x40328e
push ecx
push edi
push ecx
mov byte [ebp - 0x90], 0
lea ecx, [ebp - 0x40]
push dword [ebp - 0x90]
push edi
call fcn.00405580
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x18]
cmp ecx, 0x3c
jne 0x4032a1
cmp edx, ecx
je 0x403335
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0x10
jb 0x4032d9
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4032cf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
add esp, 8
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x94]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp ecx, 0x10
jb 0x403130
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403323
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
mov esi, dword [ebp - 0x94]
jmp 0x403125
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
mov edx, str.60_s_s
lea ecx, [ebp - 0x88]
cmovae eax, dword [ebp - 0x28]
cmp dword [ebp - 0x2c], 0x10
mov dword [ebp - 0x98], eax
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.00405360
mov ebx, dword [ebp - 0x94]
add esp, 8
lea ecx, [ebx + 0x60]
push eax
mov dword [ebp - 0x98], ecx
call fcn.00404510
mov ecx, dword [ebp - 0x74]
cmp ecx, 0x10
jb 0x4033c4
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4033ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b30
push ecx
push edx
call fcn.0041c264
add esp, 8
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0x10
jb 0x4033fc
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4033f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
add esp, 8
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp ecx, 0x10
jb 0x403446
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40343c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
add esp, 8
mov edx, dword [ebx + 0x10]
lea esi, [ebx + 0x48]
mov ecx, dword [esi + 0x10]
mov eax, 0x7fffffff
sub eax, edx
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0xa0], ecx
cmp eax, ecx
jb 0x403b35
cmp dword [ebx + 0x14], 0x10
mov dword [ebp - 0xb0], ebx
jb 0x40347e
mov eax, dword [ebx]
mov dword [ebp - 0xb0], eax
cmp dword [esi + 0x14], 0x10
mov dword [ebp - 0x90], esi
jb 0x403492
mov eax, dword [esi]
mov dword [ebp - 0x90], eax
lea ebx, [ecx + edx]
mov dword [ebp - 0x28], 0
mov edi, 0xf
lea esi, [ebp - 0x28]
cmp ebx, edi
jbe 0x403525
mov edi, ebx
or edi, 0xf
cmp edi, 0x7fffffff
jbe 0x4034bc
mov edi, 0x7fffffff
jmp 0x4034c6
mov eax, 0x16
cmp edi, eax
cmovb edi, eax
xor ecx, ecx
mov eax, edi
add eax, 1
setb cl
neg ecx
or ecx, eax
cmp ecx, 0x1000
jb 0x403509
lea eax, [ecx + 0x23]
cmp eax, ecx
jbe 0x403b3a
push eax
call fcn.0041bece
add esp, 4
test eax, eax
je 0x403b64
mov edx, dword [ebp - 0x9c]
lea esi, [eax + 0x23]
and esi, 0xffffffe0
mov dword [esi - 4], eax
jmp 0x403522
test ecx, ecx
je 0x403520
push ecx
call fcn.0041bece
mov edx, dword [ebp - 0x9c]
add esp, 4
mov esi, eax
jmp 0x403522
xor esi, esi
mov dword [ebp - 0x28], esi
push edx
push dword [ebp - 0xb0]
mov dword [ebp - 0x18], ebx
push esi
mov dword [ebp - 0x14], edi
call fcn.0041e8a0
push dword [ebp - 0xa0]
mov eax, dword [ebp - 0x9c]
push dword [ebp - 0x90]
add eax, esi
push eax
call fcn.0041e8a0
add esp, 0x18
mov byte [esi + ebx], 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0xa4], 7
lea ecx, [ebp - 0x58]
push eax
call fcn.00404510
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x4035a3
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403599
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b64
push ecx
push edx
call fcn.0041c264
add esp, 8
cmp dword [ebp - 0x44], 0x10
lea edx, [ebp - 0x58]
push dword [ebp - 0x48]
cmovae edx, dword [ebp - 0x58]
lea ecx, [ebp - 0x88]
call fcn.00403db0
push ecx
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x88]
call fcn.004018a0
sub esp, 8
mov byte [ebp - 4], 7
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0x7c]
push eax
call fcn.004018a0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x18]
cmp ecx, 0x3c
jae 0x403676
mov esi, dword [ebp - 0x14]
lea edx, [ebp - 0x28]
mov ebx, dword [ebp - 0x28]
lea eax, [ebp - 0x28]
mov edi, 0x3c
sub edi, ecx
cmp esi, 0x10
setae byte [ebp - 0x89]
cmovae edx, ebx
cmp byte [ebp - 0x89], 0
cmovne eax, ebx
sub edx, eax
cmp ecx, edx
jb 0x403b2b
sub esi, ecx
cmp edi, esi
ja 0x40365a
cmp byte [ebp - 0x89], 0
lea eax, [ecx + edi]
lea esi, [ebp - 0x28]
mov dword [ebp - 0x18], eax
cmovne esi, ebx
sub ecx, edx
add esi, edx
inc ecx
push ecx
push esi
lea eax, [esi + edi]
push eax
call fcn.0041e8a0
push edi
push 0x30
push esi
call fcn.0041d1c0
add esp, 0x18
jmp 0x403673
push ecx
push edi
push edx
mov byte [ebp - 0xa0], 0
lea ecx, [ebp - 0x28]
push dword [ebp - 0xa0]
push edi
call fcn.00405580
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x30]
cmp edx, 0x3c
jae 0x40370c
mov esi, dword [ebp - 0x2c]
lea ecx, [ebp - 0x40]
mov ebx, dword [ebp - 0x40]
lea eax, [ebp - 0x40]
mov edi, 0x3c
sub edi, edx
cmp esi, 0x10
setae byte [ebp - 0x89]
cmovae ecx, ebx
cmp byte [ebp - 0x89], 0
cmovne eax, ebx
sub ecx, eax
cmp edx, ecx
jb 0x403b2b
sub esi, edx
cmp edi, esi
ja 0x4036ed
cmp byte [ebp - 0x89], 0
lea eax, [edx + edi]
lea esi, [ebp - 0x40]
mov dword [ebp - 0x30], eax
cmovne esi, ebx
sub edx, ecx
add esi, ecx
inc edx
push edx
push esi
lea eax, [esi + edi]
push eax
call fcn.0041e8a0
push edi
push 0x30
push esi
call fcn.0041d1c0
add esp, 0x18
jmp 0x403706
push ecx
push edi
push ecx
mov byte [ebp - 0x90], 0
lea ecx, [ebp - 0x40]
push dword [ebp - 0x90]
push edi
call fcn.00405580
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x18]
cmp ecx, 0x3c
jne 0x403719
cmp edx, ecx
je 0x40379e
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0x10
jb 0x403751
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403747
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
add esp, 8
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp ecx, 0x10
jb 0x4035a3
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403599
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
jmp 0x403599
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
mov edx, str.60_s_s
lea ecx, [ebp - 0x70]
cmovae eax, dword [ebp - 0x28]
cmp dword [ebp - 0x2c], 0x10
mov dword [ebp - 0xa0], eax
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.00405360
mov edi, dword [ebp - 0x94]
add esp, 8
lea ebx, [edi + 0x78]
push eax
mov ecx, ebx
mov dword [ebp - 0x9c], ebx
call fcn.00404510
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x403829
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40381f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b3f
push ecx
push edx
call fcn.0041c264
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0x10
jb 0x403861
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403857
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
add esp, 8
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp ecx, 0x10
jb 0x4038ab
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4038a1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b17
push ecx
push edx
call fcn.0041c264
add esp, 8
cmp dword [edi + 0x2c], 0x10
lea eax, [edi + 0x18]
jb 0x4038b6
mov eax, dword [eax]
push dword [edi + 0x28]
mov esi, dword [sym.imp.ntdll.dll_RtlComputeCrc32]
push eax
push 0
call esi
cmp dword [edi + 0x14], 0x10
mov ecx, edi
jb 0x4038ce
mov ecx, dword [edi]
push dword [edi + 0x10]
push ecx
push eax
call esi
cmp dword [edi + 0x5c], 0x10
lea ecx, [edi + 0x48]
jb 0x4038e1
mov ecx, dword [edi + 0x48]
push dword [edi + 0x58]
push ecx
push eax
call esi
cmp dword [edi + 0x74], 0x10
lea ecx, [edi + 0x60]
jb 0x4038f4
mov ecx, dword [edi + 0x60]
push dword [edi + 0x70]
push ecx
push eax
call esi
cmp dword [ebx + 0x14], 0x10
mov ecx, ebx
jb 0x403905
mov ecx, dword [ebx]
push dword [edi + 0x88]
push ecx
push eax
call esi
cmp dword [edi + 0xa4], 0x10
lea ecx, [edi + 0x90]
jb 0x403924
mov ecx, dword [edi + 0x90]
push dword [edi + 0xa0]
push ecx
push eax
call esi
not eax
mov dword [edi + 0xa8], eax
cmp dword [edi + 0xa4], 0x10
jb 0x40394b
mov ecx, dword [edi + 0x90]
mov dword [ebp - 0xa8], ecx
cmp dword [ebx + 0x14], 0x10
jb 0x403959
mov ebx, dword [ebx]
mov dword [ebp - 0x9c], ebx
cmp dword [edi + 0x74], 0x10
lea edx, [edi + 0x60]
jb 0x40396a
mov edx, dword [edx]
mov dword [ebp - 0x98], edx
cmp dword [edi + 0x5c], 0x10
jb 0x403979
mov ecx, dword [edi + 0x48]
mov dword [ebp - 0xac], ecx
mov esi, dword [edi + 0xa0]
mov ecx, dword [ebp - 0x94]
mov edi, dword [edi + 0x88]
push eax
push dword [ebp - 0xa8]
mov ebx, dword [ecx + 0x70]
push dword [ebp - 0x9c]
mov ecx, dword [ecx + 0x58]
push edx
push dword [ebp - 0xac]
mov dword [ebp - 0xa0], ecx
push esi
push edi
push ebx
push ecx
push str._zd_zd_zd_zd_s_s_s_s_010lu
push 0
push 0
call fcn.004014d0
xor ecx, ecx
mov dword [ebp - 0x28], 0
add eax, 1
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
setb cl
add esp, 0x2c
neg ecx
or ecx, eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00404290
mov ecx, dword [ebp - 0x94]
lea eax, [ebp - 0x28]
mov edx, dword [ebp - 0x98]
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0xa4], 0xf
push dword [ecx + 0xa8]
cmovae eax, dword [ebp - 0x28]
push dword [ebp - 0xa8]
push dword [ebp - 0x9c]
push edx
push dword [ebp - 0xac]
push esi
push edi
push ebx
push dword [ebp - 0xa0]
push str._zd_zd_zd_zd_s_s_s_s_010lu
push dword [ebp - 0x18]
push eax
call fcn.004014d0
add esp, 0x30
nop
mov edx, dword [ebp - 0x14]
lea eax, [ebp - 0x28]
mov esi, dword [ebp - 0x28]
cmp edx, 0x10
mov ecx, dword [ebp - 0x18]
cmovae eax, esi
cmp byte [ecx + eax - 1], 0
lea eax, [ebp - 0x28]
jne 0x403a6c
dec ecx
cmp edx, 0x10
mov dword [ebp - 0x18], ecx
cmovae eax, esi
mov byte [eax + ecx], 0
jmp 0x403a40
mov ecx, dword [ebp - 0xb4]
push eax
call fcn.00404510
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x403aac
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403aa2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b44
push ecx
push edx
call fcn.0041c264
add esp, 8
mov ebx, dword [ebp - 0x94]
xor edx, edx
mov ecx, 0x36
mov eax, dword [ebx + 0xbc]
div ecx
test edx, edx
jne 0x403b49
mov ecx, dword [ebp - 0x44]
cmp ecx, 0x10
jb 0x403af9
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403aef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403b64
push ecx
push edx
call fcn.0041c264
add esp, 8
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041bcc3
mov esp, ebp
pop ebp
ret
call fcn.0042237b
call fcn.0042237b
call fcn.0042237b
call fcn.0042237b
call fcn.00405350
call fcn.0042237b
call fcn.004016b0
call fcn.00401610
call fcn.0042237b
call fcn.0042237b
push str.InternalError:_The_length_of_register_data_is_not_correct.
lea ecx, [ebp - 0x34]
call fcn.004017e0
push 0x4416e4
lea eax, [ebp - 0x34]
push eax
call fcn.0041d31a
call fcn.0042237b
int3