Function at 0x52b691
Capabilities:
Check for time delay via gettickcount
Get hostname
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x154
push edi
lea eax, [ebp - 0x12c]
push eax
call fcn.005600cb
mov dword [ebp - 0xec], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 8], 0x40
lea ecx, [ebp - 8]
push ecx
lea edx, [ebp - 0xd8]
push edx
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
mov byte [ebp - 0x34], 0x39
cmp dword [0x67c468], 0
je 0x52b72e
mov byte [ebp - 0x34], 0x46
movsx eax, byte [ebp + 0x24]
cmp eax, 0x39
jne 0x52b72e
mov byte [ebp + 0x24], 0x46
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x114], 0
mov ecx, dword [ebp + 0x14]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52b7a9
mov edx, dword [ebp - 0xf0]
add edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0xf0]
cmp eax, dword [ebp + 0x18]
jg 0x52b90a
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x59
je 0x52b7da
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x79
jne 0x52b7e3
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x4d
jne 0x52b803
mov edx, dword [ebp - 0x128]
add edx, 1
mov dword [ebp - 0x128], edx
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x44
je 0x52b825
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x64
jne 0x52b834
mov ecx, dword [ebp - 0x90]
add ecx, 1
mov dword [ebp - 0x90], ecx
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x43
je 0x52b856
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x63
jne 0x52b865
mov eax, dword [ebp - 0x88]
add eax, 1
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x48
jne 0x52b885
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x6d
jne 0x52b8a5
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x53
jne 0x52b8c5
mov eax, dword [ebp - 0x10c]
add eax, 1
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x73
jne 0x52b8e5
mov eax, dword [ebp - 0x104]
add eax, 1
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x50
jne 0x52b905
mov eax, dword [ebp - 0x114]
add eax, 1
mov dword [ebp - 0x114], eax
jmp 0x52b79a
mov dword [ebp - 0xf0], 0
jmp 0x52b925
mov ecx, dword [ebp - 0xf0]
add ecx, 1
mov dword [ebp - 0xf0], ecx
mov edi, dword [ebp + 0x28]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
cmp dword [ebp - 0xf0], ecx
jge 0x52ba62
mov edx, dword [ebp + 0x28]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x59
je 0x52b962
mov ecx, dword [ebp + 0x28]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x79
jne 0x52b96c
mov dword [ebp - 0xec], 1
mov eax, dword [ebp + 0x28]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x4d
jne 0x52b987
mov dword [ebp - 0x98], 1
mov edx, dword [ebp + 0x28]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x44
je 0x52b9a9
mov ecx, dword [ebp + 0x28]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x64
jne 0x52b9b0
mov dword [ebp - 0x1c], 1
mov eax, dword [ebp + 0x28]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x43
je 0x52b9d2
mov edx, dword [ebp + 0x28]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x63
jne 0x52b9dc
mov dword [ebp - 0x11c], 1
mov ecx, dword [ebp + 0x28]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x48
jne 0x52b9f7
mov dword [ebp - 0xfc], 1
mov eax, dword [ebp + 0x28]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x6d
jne 0x52ba12
mov dword [ebp - 0xdc], 1
mov edx, dword [ebp + 0x28]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x53
jne 0x52ba2d
mov dword [ebp - 0xf4], 1
mov ecx, dword [ebp + 0x28]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x73
jne 0x52ba45
mov dword [ebp - 0x80], 1
mov eax, dword [ebp + 0x28]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x50
jne 0x52ba5d
mov dword [ebp - 0x10], 1
jmp 0x52b916
mov edx, dword [ebp - 0x18]
add edx, 1
push edx
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x128]
add eax, 1
push eax
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x90]
add ecx, 1
push ecx
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 8]
add edx, 1
push edx
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x108]
add eax, 1
push eax
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0xe8], eax
mov ecx, dword [ebp - 0x120]
add ecx, 1
push ecx
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x118], eax
mov edx, dword [ebp - 0x10c]
add edx, 1
push edx
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x104]
add eax, 1
push eax
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x114]
add ecx, 1
push ecx
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x8c], 0
je 0x52bb6d
cmp dword [ebp - 0xc], 0
je 0x52bb6d
cmp dword [ebp - 0x20], 0
je 0x52bb6d
cmp dword [ebp - 0x7c], 0
je 0x52bb6d
cmp dword [ebp - 0xe8], 0
je 0x52bb6d
cmp dword [ebp - 0x118], 0
je 0x52bb6d
cmp dword [ebp - 0x94], 0
je 0x52bb6d
cmp dword [ebp - 0x78], 0
je 0x52bb6d
cmp dword [ebp - 0x110], 0
jne 0x52bb75
or eax, 0xffffffff
jmp 0x52cd0a
mov ecx, dword [ebp - 8]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x7c]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x7c]
add eax, dword [ebp - 8]
mov byte [eax], 0
mov ecx, dword [ebp - 8]
sub ecx, 1
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0x24], 2
lea edi, [ebp - 0xd8]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xfffffffe
mov dword [ebp - 0xf0], ecx
jmp 0x52bbd6
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
cmp dword [ebp - 0xf0], 0
jl 0x52bc51
mov eax, dword [ebp - 0xf0]
movsx ecx, byte [ebp + eax - 0xd8]
cmp ecx, 0x30
jl 0x52bc44
mov edx, dword [ebp - 0xf0]
movsx eax, byte [ebp + edx - 0xd8]
cmp eax, 0x39
jg 0x52bc44
cmp dword [ebp - 0xf8], 0
jle 0x52bc44
cmp dword [ebp - 0x24], 0
jle 0x52bc44
mov ecx, dword [ebp - 0x7c]
add ecx, dword [ebp - 0xf8]
mov edx, dword [ebp - 0xf0]
mov al, byte [ebp + edx - 0xd8]
mov byte [ecx], al
mov ecx, dword [ebp - 0xf8]
sub ecx, 1
mov dword [ebp - 0xf8], ecx
mov edx, dword [ebp - 0x24]
sub edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0
jg 0x52bc4c
jmp 0x52bc51
jmp 0x52bbc7
mov edi, dword [ebp - 0x7c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
cmp ecx, 0x40
jb 0x52bcc0
push str._Computer_Index_Length_over_buffer_Size_SMI_r_n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edi, dword [ebp - 0x7c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffc0
mov dword [ebp - 0x130], ecx
mov ecx, dword [ebp - 0x130]
mov eax, 0x30303030
mov edi, dword [ebp - 0x7c]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
push str.The_Computer_Index:
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ecx, dword [ebp - 0x7c]
push ecx
call fcn.0054c571
add esp, 4
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x7c]
push edx
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0x11c], 0
je 0x52bcfb
mov eax, dword [ebp - 0x24]
push eax
push 0x5cb5f0
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52bd10
mov edx, dword [ebp - 0x24]
push edx
push 0x5cb5f4
lea eax, [ebp - 0x74]
push eax
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x88]
add ecx, 1
push ecx
call fcn.0054cfd4
add esp, 4
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x88]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x7c]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x7c]
add eax, dword [ebp - 0x88]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x88]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52bd85
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x88]
cmp eax, dword [ebp - 0xe0]
jle 0x52bda7
mov ecx, dword [ebp - 0x88]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x134], ecx
jmp 0x52bdb1
mov dword [ebp - 0x134], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x134]
jl 0x52bded
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x88]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0x7c]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52bd76
cmp dword [ebp - 0xec], 0
je 0x52be15
lea ecx, [ebp - 0x12c]
call fcn.004bde20
push eax
push 0x5cb5f8
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52be32
lea ecx, [ebp - 0x12c]
call fcn.004bde20
push eax
push 0x5cb5fc
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x18]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x8c]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x8c]
add eax, dword [ebp - 0x18]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x18]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52be8f
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0xe0]
jle 0x52beab
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x138], ecx
jmp 0x52beb5
mov dword [ebp - 0x138], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x138]
jl 0x52bef1
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0x8c]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52be80
cmp dword [ebp - 0x98], 0
je 0x52bf19
lea ecx, [ebp - 0x12c]
call fcn.004bde40
push eax
push 0x5cb600
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52bf36
lea ecx, [ebp - 0x12c]
call fcn.004bde40
push eax
push 0x5cb604
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x128]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0xc]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 0x128]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x128]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52bf96
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x128]
cmp eax, dword [ebp - 0xe0]
jle 0x52bfb8
mov ecx, dword [ebp - 0x128]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x13c], ecx
jmp 0x52bfc2
mov dword [ebp - 0x13c], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x13c]
jl 0x52bffe
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x128]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0xc]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52bf87
cmp dword [ebp - 0x1c], 0
je 0x52c023
lea ecx, [ebp - 0x12c]
call fcn.004bde60
push eax
push 0x5cb608
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52c040
lea ecx, [ebp - 0x12c]
call fcn.004bde60
push eax
push 0x5cb60c
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x90]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x20]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x90]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x90]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52c0a0
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x90]
cmp eax, dword [ebp - 0xe0]
jle 0x52c0c2
mov ecx, dword [ebp - 0x90]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x140], ecx
jmp 0x52c0cc
mov dword [ebp - 0x140], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x140]
jl 0x52c108
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x90]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0x20]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52c091
cmp dword [ebp - 0xfc], 0
je 0x52c130
lea ecx, [ebp - 0x12c]
call fcn.004be220
push eax
push 0x5cb610
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52c14d
lea ecx, [ebp - 0x12c]
call fcn.004be220
push eax
push 0x5cb614
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x108]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0xe8]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0xe8]
add eax, dword [ebp - 0x108]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x108]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52c1b3
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x108]
cmp eax, dword [ebp - 0xe0]
jle 0x52c1d5
mov ecx, dword [ebp - 0x108]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x144], ecx
jmp 0x52c1df
mov dword [ebp - 0x144], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x144]
jl 0x52c21e
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x108]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0xe8]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52c1a4
cmp dword [ebp - 0xdc], 0
je 0x52c246
lea ecx, [ebp - 0x12c]
call fcn.004be240
push eax
push 0x5cb618
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52c263
lea ecx, [ebp - 0x12c]
call fcn.004be240
push eax
push 0x5cb61c
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x120]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x118]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x118]
add eax, dword [ebp - 0x120]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x120]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52c2c9
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x120]
cmp eax, dword [ebp - 0xe0]
jle 0x52c2eb
mov ecx, dword [ebp - 0x120]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x148], ecx
jmp 0x52c2f5
mov dword [ebp - 0x148], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x148]
jl 0x52c334
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x120]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0x118]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52c2ba
cmp dword [ebp - 0xf4], 0
je 0x52c35c
lea ecx, [ebp - 0x12c]
call fcn.004be260
push eax
push 0x5cb620
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52c379
lea ecx, [ebp - 0x12c]
call fcn.004be260
push eax
push 0x5cb624
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x10c]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x94]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x94]
add eax, dword [ebp - 0x10c]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x10c]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52c3df
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x10c]
cmp eax, dword [ebp - 0xe0]
jle 0x52c401
mov ecx, dword [ebp - 0x10c]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x14c], ecx
jmp 0x52c40b
mov dword [ebp - 0x14c], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x14c]
jl 0x52c44a
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x10c]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0x94]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52c3d0
cmp dword [ebp - 0x80], 0
je 0x52c473
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
mov ecx, 0x3e8
div ecx
push edx
push 0x5cb628
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52c494
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
mov ecx, 0x3e8
div ecx
push edx
push 0x5cb62c
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x104]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x78]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x78]
add eax, dword [ebp - 0x104]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x104]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52c4f4
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x104]
cmp eax, dword [ebp - 0xe0]
jle 0x52c516
mov ecx, dword [ebp - 0x104]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x150], ecx
jmp 0x52c520
mov dword [ebp - 0x150], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x150]
jl 0x52c55c
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x104]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0x78]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52c4e5
cmp dword [ebp - 0x10], 0
je 0x52c579
mov ecx, dword [ebp + 0x30]
push ecx
push 0x5cb630
lea edx, [ebp - 0x74]
push edx
call fcn.0054c6e3
add esp, 0xc
jmp 0x52c58e
mov eax, dword [ebp + 0x30]
push eax
push 0x5cb634
lea ecx, [ebp - 0x74]
push ecx
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x114]
add ecx, 1
mov eax, 0x30303030
mov edi, dword [ebp - 0x110]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x110]
add eax, dword [ebp - 0x114]
mov byte [eax], 0
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0x114]
sub ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x52c5f4
mov edx, dword [ebp - 0xf0]
sub edx, 1
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x114]
cmp eax, dword [ebp - 0xe0]
jle 0x52c616
mov ecx, dword [ebp - 0x114]
sub ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x154], ecx
jmp 0x52c620
mov dword [ebp - 0x154], 0
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0x154]
jl 0x52c65f
lea edi, [ebp - 0x74]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
mov eax, dword [ebp - 0x114]
sub eax, dword [ebp - 0xf0]
sub ecx, eax
mov edx, dword [ebp - 0x110]
add edx, dword [ebp - 0xf0]
mov al, byte [ebp + ecx - 0x74]
mov byte [edx], al
jmp 0x52c5e5
mov dword [ebp - 0xe4], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x124], 0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x100], 0
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0xf0], 0
jmp 0x52c6c8
mov ecx, dword [ebp - 0xf0]
add ecx, 1
mov dword [ebp - 0xf0], ecx
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp + 0x10]
jge 0x52cbe2
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x23
jne 0x52c722
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x30
jl 0x52c70f
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
movsx eax, byte [ebp - 0x34]
cmp edx, eax
jg 0x52c70f
jmp 0x52c6b9
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov dl, byte [ebp + 0x24]
mov byte [ecx], dl
jmp 0x52cbdd
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x59
je 0x52c748
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x79
jne 0x52c7dc
cmp dword [ebp + 0x1c], 0
je 0x52c7dc
mov ecx, dword [ebp + 0x14]
sub ecx, 1
cmp dword [ebp - 0xf0], ecx
jl 0x52c7c1
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp + 0x18]
jge 0x52c7c1
cmp dword [ebp + 0x20], 0
je 0x52c797
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x8c]
add edx, dword [ebp - 0xe4]
movsx eax, byte [edx]
cmp ecx, eax
je 0x52c797
mov dword [ebp - 0x28], 1
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0x8c]
add edx, dword [ebp - 0xe4]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 0xe4]
add ecx, 1
mov dword [ebp - 0xe4], ecx
jmp 0x52c7d7
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x52cbdd
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x4d
jne 0x52c86b
cmp dword [ebp + 0x1c], 0
je 0x52c86b
mov ecx, dword [ebp + 0x14]
sub ecx, 1
cmp dword [ebp - 0xf0], ecx
jl 0x52c850
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp + 0x18]
jge 0x52c850
cmp dword [ebp + 0x20], 0
je 0x52c832
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0xc]
add edx, dword [ebp - 4]
movsx eax, byte [edx]
cmp ecx, eax
je 0x52c832
mov dword [ebp - 0x28], 1
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xc]
add edx, dword [ebp - 4]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
jmp 0x52c866
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x52cbdd
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x44
je 0x52c891
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x64
jne 0x52c91f
cmp dword [ebp + 0x1c], 0
je 0x52c91f
mov eax, dword [ebp + 0x14]
sub eax, 1
cmp dword [ebp - 0xf0], eax
jl 0x52c904
mov ecx, dword [ebp - 0xf0]
cmp ecx, dword [ebp + 0x18]
jge 0x52c904
cmp dword [ebp + 0x20], 0
je 0x52c8dd
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x124]
movsx edx, byte [ecx]
cmp eax, edx
je 0x52c8dd
mov dword [ebp - 0x28], 1
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x124]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 0x124]
add eax, 1
mov dword [ebp - 0x124], eax
jmp 0x52c91a
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
mov al, byte [edx]
mov byte [ecx], al
jmp 0x52cbdd
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x43
je 0x52c941
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x63
jne 0x52c9a2
cmp dword [ebp + 0x1c], 0
je 0x52c9a2
mov edx, dword [ebp + 0x14]
sub edx, 1
cmp dword [ebp - 0xf0], edx
jl 0x52c987
mov eax, dword [ebp - 0xf0]
cmp eax, dword [ebp + 0x18]
jge 0x52c987
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0x7c]
add edx, dword [ebp - 0xf8]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 0xf8]
add ecx, 1
mov dword [ebp - 0xf8], ecx
jmp 0x52c99d
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x52cbdd
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x48
jne 0x52ca0e
cmp dword [ebp + 0x1c], 0
je 0x52ca0e
mov ecx, dword [ebp + 0x14]
sub ecx, 1
cmp dword [ebp - 0xf0], ecx
jl 0x52c9f3
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp + 0x18]
jge 0x52c9f3
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xe8]
add ecx, dword [ebp - 0x30]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
jmp 0x52ca09
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
mov al, byte [edx]
mov byte [ecx], al
jmp 0x52cbdd
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x6d
jne 0x52ca7a
cmp dword [ebp + 0x1c], 0
je 0x52ca7a
mov eax, dword [ebp + 0x14]
sub eax, 1
cmp dword [ebp - 0xf0], eax
jl 0x52ca5f
mov ecx, dword [ebp - 0xf0]
cmp ecx, dword [ebp + 0x18]
jge 0x52ca5f
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x118]
add eax, dword [ebp - 0x2c]
mov cl, byte [eax]
mov byte [edx], cl
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
jmp 0x52ca75
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
mov dl, byte [ecx]
mov byte [eax], dl
jmp 0x52cbdd
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x53
jne 0x52caef
cmp dword [ebp + 0x1c], 0
je 0x52caef
mov edx, dword [ebp + 0x14]
sub edx, 1
cmp dword [ebp - 0xf0], edx
jl 0x52cad4
mov eax, dword [ebp - 0xf0]
cmp eax, dword [ebp + 0x18]
jge 0x52cad4
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0x94]
add edx, dword [ebp - 0x100]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 0x100]
add ecx, 1
mov dword [ebp - 0x100], ecx
jmp 0x52caea
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x52cbdd
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
movsx eax, byte [edx]
cmp eax, 0x73
jne 0x52cb5e
cmp dword [ebp + 0x1c], 0
je 0x52cb5e
mov ecx, dword [ebp + 0x14]
sub ecx, 1
cmp dword [ebp - 0xf0], ecx
jl 0x52cb46
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp + 0x18]
jge 0x52cb46
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0x78]
add ecx, dword [ebp - 0x84]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 0x84]
add eax, 1
mov dword [ebp - 0x84], eax
jmp 0x52cb5c
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0xf0]
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xf0]
mov al, byte [edx]
mov byte [ecx], al
jmp 0x52cbdd
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
cmp edx, 0x50
jne 0x52cbc7
cmp dword [ebp + 0x1c], 0
je 0x52cbc7
mov eax, dword [ebp + 0x14]
sub eax, 1
cmp dword [ebp - 0xf0], eax
jl 0x52cbaf
mov ecx, dword [ebp - 0xf0]
cmp ecx, dword [ebp + 0x18]
jge 0x52cbaf
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x110]
add eax, dword [ebp - 0x14]
mov cl, byte [eax]
mov byte [edx], cl
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
jmp 0x52cbc5
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
mov dl, byte [ecx]
mov byte [eax], dl
jmp 0x52cbdd
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xf0]
mov dl, byte [ecx]
mov byte [eax], dl
jmp 0x52c6b9
cmp dword [ebp - 0x28], 0
je 0x52cc3c
cmp dword [ebp + 0x2c], 0
jne 0x52cc3c
movsx eax, byte [ebp + 0x24]
cmp eax, 0x30
jne 0x52cc3c
mov dword [ebp - 0xf0], 0
jmp 0x52cc12
mov ecx, dword [ebp - 0xf0]
add ecx, 1
mov dword [ebp - 0xf0], ecx
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp + 0x10]
jge 0x52cc3c
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0xf0]
movsx ecx, byte [eax]
cmp ecx, 0x23
jne 0x52cc3a
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xf0]
mov byte [edx], 0x30
jmp 0x52cc03
mov eax, dword [ebp + 8]
add eax, dword [ebp + 0x10]
mov byte [eax], 0
cmp dword [ebp - 0x8c], 0
je 0x52cc5d
mov ecx, dword [ebp - 0x8c]
push ecx
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x52cc6f
mov edx, dword [ebp - 0xc]
push edx
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0x20], 0
je 0x52cc81
mov eax, dword [ebp - 0x20]
push eax
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0x7c], 0
je 0x52cc93
mov ecx, dword [ebp - 0x7c]
push ecx
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0xe8], 0
je 0x52ccab
mov edx, dword [ebp - 0xe8]
push edx
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0x118], 0
je 0x52ccc3
mov eax, dword [ebp - 0x118]
push eax
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0x94], 0
je 0x52ccdb
mov ecx, dword [ebp - 0x94]
push ecx
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0x78], 0
je 0x52cced
mov edx, dword [ebp - 0x78]
push edx
call fcn.0054ccb2
add esp, 4
cmp dword [ebp - 0x110], 0
je 0x52cd05
mov eax, dword [ebp - 0x110]
push eax
call fcn.0054ccb2
add esp, 4
mov eax, 1
pop edi
mov esp, ebp
pop ebp
ret