Function at 0x408db0
Capabilities:
Get file size
Read file on windows

Disassembly:
sub esp, 0x98
mov eax, dword [0x438e28]
xor eax, esp
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0xa4]
push ebx
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0xac]
push ebp
push esi
xor esi, esi
xor ebx, ebx
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0xb8]
push edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x44], eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x28], ebx
cmp byte [ecx + 0x25], bl
je 0x40904e
mov edx, 0x43cf18
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x408e27
mov eax, 0x43cf18
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408e40
sub eax, edx
cmp byte [eax + 0x43cf17], 0x5c
je 0x408e69
mov edi, 0x43cf18
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x408e58
mov ax, word [0x433824]
mov word [edi], ax
mov eax, 0x43cf18
dec eax
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x408e70
mov ecx, dword [str.Descript.ion]
mov edx, dword [0x4345fc]
push esi
push 0x8000000
push 3
push esi
mov dword [eax], ecx
mov ecx, dword [0x434600]
push 1
mov dword [eax + 4], edx
mov dl, byte [0x434604]
push 0x80000000
mov dword [eax + 8], ecx
push 0x43cf18
mov byte [eax + 0xc], dl
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
je 0x40904e
push 0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
lea eax, [edi + 2]
push eax
call fcn.0041882e
add esp, 4
push 0
lea ecx, [esp + 0x54]
push ecx
mov ebp, eax
push edi
push ebp
push esi
mov dword [esp + 0x50], ebp
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov edx, dword [esp + 0x50]
mov byte [edx + ebp + 1], bl
mov eax, dword [esp + 0x50]
push esi
mov byte [eax + ebp], bl
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor ecx, ecx
lea eax, [ecx + 1]
cmp byte [ebp], cl
je 0x408f36
mov edi, edi
mov dl, byte [ecx + ebp]
cmp dl, 0xd
jne 0x408f25
cmp byte [ecx + ebp + 1], 0xa
jne 0x408f25
inc eax
add ecx, 2
jmp 0x408f31
cmp dl, 0xa
je 0x408f2f
cmp dl, 0xd
jne 0x408f30
inc eax
inc ecx
cmp byte [ecx + ebp], bl
jne 0x408f10
xor ecx, ecx
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0041882e
mov edi, eax
xor eax, eax
add esp, 4
mov dword [esp + 0x30], edi
cmp byte [ebp], al
je 0x40904e
mov cl, byte [eax + ebp]
cmp cl, 0x20
je 0x408f72
cmp cl, 9
je 0x408f72
cmp cl, 0xc
jne 0x408f75
inc eax
jmp 0x408f60
mov dl, byte [eax + ebp]
lea ecx, [eax + ebp]
cmp dl, 0x22
je 0x408fd0
cmp dl, 0x27
je 0x408fd0
cmp byte [ecx], 0
mov edx, ecx
je 0x408fb5
lea esp, [esp]
mov cl, byte [ecx]
cmp cl, 0x20
je 0x408fb5
cmp cl, 9
je 0x408fb5
cmp cl, 0xc
je 0x408fb5
cmp cl, 0xa
je 0x408fb5
cmp cl, 0xd
je 0x408fb5
inc eax
cmp byte [eax + ebp], 0
lea ecx, [eax + ebp]
jne 0x408f90
mov cl, byte [eax + ebp]
cmp cl, 0x20
je 0x408fc7
cmp cl, 9
je 0x408fc7
cmp cl, 0xc
jne 0x409007
mov byte [eax + ebp], 0
mov dword [edi + ebx*4], edx
jmp 0x409006
inc eax
cmp byte [eax + ebp], 0
lea ecx, [eax + ebp]
mov esi, ecx
je 0x408ffa
lea esp, [esp]
mov cl, byte [ecx]
cmp cl, dl
je 0x408ffa
cmp cl, 0xa
je 0x408ffa
cmp cl, 0xd
je 0x408ffa
inc eax
cmp byte [eax + ebp], 0
lea ecx, [eax + ebp]
jne 0x408fe0
cmp byte [eax + ebp], dl
jne 0x409007
mov byte [eax + ebp], 0
mov dword [edi + ebx*4], esi
inc ebx
inc eax
cmp byte [eax + ebp], 0
je 0x40904a
mov edi, edi
mov cl, byte [eax + ebp]
cmp cl, 0xd
jne 0x40901f
cmp byte [eax + ebp + 1], 0xa
je 0x409032
cmp cl, 0xa
je 0x40903b
cmp cl, 0xd
je 0x40903b
inc eax
cmp byte [eax + ebp], 0
jne 0x409010
jmp 0x409040
mov byte [eax + ebp], 0
add eax, 2
jmp 0x409040
mov byte [eax + ebp], 0
inc eax
cmp byte [eax + ebp], 0
jne 0x408f60
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x14]
xor ebp, ebp
cmp byte [eax + 0x21], 0
mov dword [esp + 0x34], ebp
jne 0x40913f
mov edi, dword [esp + 0x20]
test edi, edi
je 0x40913f
mov edi, edi
lea edx, [edi + 5]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409078
sub eax, esi
cmp eax, ebp
jle 0x40909f
mov eax, edx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409090
sub eax, edx
mov ebp, eax
mov dword [esp + 0x34], ebp
mov edi, dword [edi]
test edi, edi
jne 0x409070
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x14], 0
je 0x40913f
mov eax, dword [eax + 0x30]
test eax, eax
je 0x4090cb
mov ecx, eax
lea esi, [ecx + 1]
nop
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x4090c0
sub ecx, esi
add ebp, ecx
neg eax
sbb eax, eax
and eax, dword [0x43cf10]
mov edx, 0x43cf18
add eax, dword [esp + 0x44]
mov edi, edi
mov cl, byte [eax]
mov byte [edx], cl
inc eax
inc edx
test cl, cl
jne 0x4090e0
mov eax, 0x43cf18
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4090f2
sub eax, edx
cmp byte [eax + 0x43cf17], 0x5c
je 0x409122
mov edi, 0x43cf18
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409110
mov cx, word [0x433824]
mov word [edi], cx
mov eax, 0x43cf18
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409130
sub eax, edx
add ebp, eax
mov dword [esp + 0x34], ebp
mov eax, dword [esp + 0x14]
mov dl, byte [eax + 0x25]
xor ebx, ebx
mov dword [esp + 0x38], ebx
mov byte [esp + 0x27], dl
lea esi, [ebx + 0x18]
test dl, dl
je 0x409208
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x409208
cmp byte [eax + 0x21], bl
jne 0x409208
cmp dword [esp + 0x20], ebx
je 0x409bd7
add ebp, 5
mov dword [esp + 0x1c], ebp
cmp byte [eax + 0x16], bl
je 0x4091aa
movzx edi, byte [eax + 0x23]
neg edi
sbb edi, edi
and edi, 0x12
add edi, 0xf
add dword [esp + 0x1c], edi
cmp byte [eax + 0x28], bl
je 0x4091a1
add dword [esp + 0x1c], esi
cmp byte [eax + 0x29], bl
je 0x4091aa
add dword [esp + 0x1c], esi
xor edi, edi
test ecx, ecx
jle 0x409208
mov edx, dword [esp + 0x30]
mov edx, dword [edx + edi*4]
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4091c0
sub eax, esi
lea eax, [edx + eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
cmp cl, 0x20
je 0x4091e1
cmp cl, 9
je 0x4091e1
cmp cl, 0xc
jne 0x4091e4
inc eax
jmp 0x4091d0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4091e7
sub eax, edx
cmp eax, ebx
cmovg ebx, eax
inc edi
cmp edi, dword [esp + 0x28]
jl 0x4091b0
mov eax, dword [esp + 0x14]
mov dl, byte [esp + 0x27]
mov dword [esp + 0x38], ebx
cmp dword [esp + 0x20], 0
je 0x409bd7
cmp byte [eax + 0x21], 0
jne 0x40934d
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
add eax, 5
cmp byte [ecx + 0x16], 0
mov dword [esp + 0x2c], eax
je 0x409260
movzx esi, byte [ecx + 0x23]
neg esi
sbb esi, esi
and esi, 0x12
add esi, 0xf
add eax, esi
cmp byte [ecx + 0x28], 0
mov dword [esp + 0x2c], eax
je 0x409253
add eax, 0x18
mov dword [esp + 0x2c], eax
cmp byte [ecx + 0x29], 0
je 0x409260
add eax, 0x18
mov dword [esp + 0x2c], eax
test dl, dl
je 0x409277
cmp dword [esp + 0x28], 0
je 0x409277
mov edx, dword [esp + 0x38]
lea eax, [eax + edx + 5]
mov dword [esp + 0x2c], eax
cmp byte [ecx + 0x24], 0
je 0x40934d
mov eax, 0x228
sub eax, 0x43a8b4
mov dword [esp + 0x58], eax
mov dword [esp + 0x18], 0
jmp 0x4092a0
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
xor esi, esi
lea ebp, [ecx + edx + 0x43a8b4]
mov edx, dword [ebx + ebp]
test edx, edx
je 0x4092de
mov eax, edx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4092c1
sub eax, edi
cmp eax, esi
jle 0x4092de
mov eax, edx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4092d3
sub eax, edx
mov esi, eax
mov ebx, dword [ebx]
test ebx, ebx
jne 0x4092b5
mov eax, dword [esp + 0x18]
test esi, esi
je 0x409331
mov edx, dword [eax + 0x43a8b4]
mov eax, edx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4092f7
sub eax, edi
cmp eax, esi
jle 0x40931b
mov eax, edx
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409310
sub eax, edx
mov esi, eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
lea edx, [eax + esi + 4]
mov dword [esp + ecx + 0x74], eax
mov dword [esp + 0x2c], edx
jmp 0x409339
mov dword [esp + eax + 0x74], 0xffffffff
mov eax, dword [esp + 0x18]
add eax, 4
mov dword [esp + 0x18], eax
cmp eax, 0x30
jl 0x4092a0
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x2a], 0
je 0x409bd7
mov ebp, ecx
mov byte [0x43d230], 0
cmp byte [ebp + 0x21], 0
je 0x40980c
mov edx, dword [str._________TR_]
mov eax, dword [0x43460c]
mov ecx, dword [0x434610]
mov dword [0x43d230], edx
mov dl, byte [0x434614]
push 1
mov dword [0x43d234], eax
mov dword [0x43d238], ecx
mov byte [0x43d23c], dl
call fcn.0040c370
add esp, 4
cmp byte [ebp + 0x16], 0
je 0x40962b
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4093b6
mov eax, dword [0x434618]
mov dword [edi], eax
mov eax, 0x43d230
dec eax
jmp 0x4093d0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4093d0
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
mov word [eax + 8], cx
mov eax, dword [0x43bc84]
call fcn.0040c310
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409404
mov dx, word [0x434574]
mov eax, dword [str.Size]
mov word [edi], dx
mov ecx, eax
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409420
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409431
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409450
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov dword [eax], ecx
mov word [eax + 4], dx
cmp byte [ebp + 0x28], 0
je 0x40954b
mov edi, 0x43d230
dec edi
jmp 0x409480
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409480
mov eax, dword [0x434618]
mov dword [edi], eax
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409495
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
mov word [eax + 8], cx
mov eax, dword [0x43bc84]
call fcn.0040c310
mov eax, 0x43d230
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4094d0
mov edx, dword [str._COLSPAN2_]
mov ecx, dword [0x434628]
mov dword [eax], edx
mov edx, dword [0x43462c]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov eax, dword [str.Created_on]
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409500
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409511
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409530
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov dword [eax], ecx
mov word [eax + 4], dx
cmp byte [ebp + 0x29], 0
je 0x40962b
mov edi, 0x43d230
dec edi
jmp 0x409560
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409560
mov eax, dword [0x434618]
mov dword [edi], eax
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409575
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
mov word [eax + 8], cx
mov eax, dword [0x43bc84]
call fcn.0040c310
mov eax, 0x43d230
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4095b0
mov edx, dword [str._COLSPAN2_]
mov ecx, dword [0x434628]
mov dword [eax], edx
mov edx, dword [0x43462c]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov eax, dword [str.Modified_on]
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4095e0
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4095f1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409610
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov dword [eax], ecx
mov word [eax + 4], dx
cmp byte [ebp + 0x25], 0
je 0x4096fb
mov edi, 0x43d230
dec edi
jmp 0x409640
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409640
mov eax, dword [0x434618]
mov dword [edi], eax
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409655
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
mov word [eax + 8], cx
mov eax, dword [0x43bc84]
call fcn.0040c310
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409690
mov dx, word [0x434574]
mov eax, dword [str.Description]
mov word [edi], dx
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4096b0
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4096c1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4096e0
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov dword [eax], ecx
mov word [eax + 4], dx
cmp byte [ebp + 0x24], 0
je 0x4097da
mov ebx, 0x43a8b4
lea ebx, [ebx]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409716
mov eax, dword [0x434618]
mov dword [edi], eax
mov eax, 0x43d230
dec eax
jmp 0x409730
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409730
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
mov word [eax + 8], cx
mov eax, dword [0x43bc84]
call fcn.0040c310
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409764
mov dx, word [0x434574]
mov eax, dword [ebx]
mov word [edi], dx
mov ecx, eax
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409780
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409791
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4097b0
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
add ebx, 4
mov dword [eax], ecx
mov word [eax + 4], dx
cmp ebx, 0x43a8e4
jl 0x409710
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4097e0
mov ecx, dword [str.__TR_]
mov dx, word [0x434634]
mov dword [eax], ecx
mov ecx, dword [esp + 0x48]
mov word [eax + 4], dx
mov eax, dword [esp + 0x40]
push eax
push ecx
mov eax, ebp
jmp 0x409bcf
cmp byte [ebp + 0x22], 0
mov cx, word [0x434638]
je 0x4099a6
mov edi, 0x43d230
dec edi
cmp byte [ebp + 0x16], 0
je 0x409930
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409830
mov eax, dword [str.Size]
mov word [edi], cx
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409842
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409853
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409870
mov dx, word [0x434638]
mov bl, byte [0x43463e]
mov eax, ebp
mov bp, word [0x43463c]
mov word [edi], dx
cmp byte [eax + 0x28], 0
je 0x4098de
mov eax, dword [str.Created_on]
mov ecx, eax
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4098a0
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4098b1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4098d0
mov word [eax], bp
mov byte [eax + 2], bl
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x28], 0
je 0x40993b
mov eax, dword [str.Modified_on]
mov ecx, eax
nop
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4098f0
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409901
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409920
mov word [eax], bp
mov byte [eax + 2], bl
jmp 0x40993b
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409930
mov word [edi], cx
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x25], 0
je 0x409b29
cmp dword [esp + 0x28], 0
je 0x409b29
mov eax, dword [str.Description]
mov ecx, eax
jmp 0x409960
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409960
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409971
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409990
mov ax, word [0x434638]
mov word [edi], ax
jmp 0x409b29
mov eax, dword [esp + 0x34]
add eax, 5
call fcn.0040bce0
cmp byte [ebp + 0x16], 0
je 0x409aca
mov ebx, dword [str.Size]
mov ecx, ebx
mov edx, ebx
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4099c6
sub ecx, edx
mov edi, 0x43d230
mov esi, edx
mov edx, ecx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4099e0
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x409a00
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409a00
sub eax, edx
mov ecx, eax
movzx eax, byte [ebp + 0x23]
neg eax
sbb eax, eax
and eax, 0x12
add eax, 0xf
sub eax, ecx
call fcn.0040bce0
cmp byte [ebp + 0x28], 0
je 0x409a77
mov ebx, dword [str.Created_on]
mov eax, ebx
mov ecx, ebx
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409a30
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409a41
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409a60
sub eax, edx
mov ecx, eax
mov eax, 0x18
sub eax, ecx
call fcn.0040bce0
cmp byte [ebp + 0x29], 0
je 0x409aca
mov ebx, dword [str.Modified_on]
mov eax, ebx
mov ecx, ebx
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409a87
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409a98
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409ab3
sub eax, edx
mov ecx, eax
mov eax, 0x18
sub eax, ecx
call fcn.0040bce0
cmp byte [ebp + 0x25], 0
je 0x409b29
cmp dword [esp + 0x28], 0
je 0x409b29
mov ebx, dword [str.Description]
mov ecx, ebx
mov edx, ebx
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409ae1
sub ecx, edx
mov edi, 0x43d230
mov esi, edx
mov edx, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409af4
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
mov eax, ebx
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409b10
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x38]
sub eax, ecx
add eax, 5
call fcn.0040bce0
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x24], 0
je 0x409bc1
xor ebx, ebx
mov eax, dword [esp + ebx*4 + 0x74]
test eax, eax
js 0x409bb7
test ebx, ebx
jle 0x409b80
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x22], 0
je 0x409b68
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409b55
mov ax, word [0x434638]
mov word [edi], ax
jmp 0x409b80
mov ecx, 0x43d230
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x409b70
sub ecx, esi
sub eax, ecx
call fcn.0040bce0
mov eax, dword [ebx*4 + 0x43a8b4]
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409b90
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409ba1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
inc ebx
cmp ebx, 0xc
jl 0x409b39
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x14]
push ecx
push edx
call fcn.0040bb60
add esp, 8
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
mov dword [ecx], 0
mov dword [esp + 0x18], eax
mov dword [edx], 0
test eax, eax
je 0x40b38d
mov eax, dword [0x43c42c]
mov ebp, dword [esp + 0x18]
cmp byte [ebp + 4], 0
je 0x409c4f
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x2c], 0
jne 0x409c55
mov edx, dword [ebp]
mov dword [esp + 0x18], edx
test eax, eax
je 0x40b382
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x409c34
push eax
call fcn.0041855e
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x409c45
push eax
call fcn.0041855e
add esp, 4
mov eax, 1
jmp 0x40b3b1
mov ebx, dword [esp + 0x14]
jmp 0x409c57
mov ebx, ecx
cmp byte [ebx + 0x21], 0
je 0x409c8b
mov eax, dword [str._________TR_]
mov ecx, dword [0x43460c]
mov edx, dword [0x434610]
mov dword [0x43d230], eax
mov al, byte [0x434614]
mov dword [0x43d234], ecx
mov dword [0x43d238], edx
mov byte [0x43d23c], al
jmp 0x409c92
mov byte [0x43d230], 0
cmp byte [ebx + 0x21], 0
je 0x40a090
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409ca2
mov ecx, dword [0x434618]
mov dword [edi], ecx
cmp byte [0x43bca0], al
je 0x409d3d
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409cc4
mov edx, dword [str._BGCOLOR]
mov ecx, dword [0x43454c]
mov dword [eax], edx
mov dx, word [0x434550]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
movzx eax, byte [0x43bc76]
push eax
mov eax, dword [0x43bc74]
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409d16
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409d27
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409d43
mov ax, word [0x434574]
mov word [edi], ax
cmp byte [ebp + 4], 0
jne 0x40a090
cmp byte [0x43bc90], 0
je 0x40a090
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409d71
mov ecx, dword [str._A_HREF_]
mov edx, dword [0x434644]
mov dword [eax], ecx
mov cx, word [0x434648]
mov dword [eax + 4], edx
mov word [eax + 8], cx
mov byte [0x43cf18], 0
mov eax, dword [ebx + 0x30]
test eax, eax
je 0x409e97
push 0x43464c
push eax
call fcn.00418a40
add esp, 8
test eax, eax
je 0x409e97
mov ecx, dword [ebx + 0x30]
mov edx, 0x43cf18
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x409dc5
mov eax, 0x43cf18
xor edx, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409de0
sub eax, esi
test eax, eax
jle 0x409e1d
lea ecx, [ecx]
cmp byte [edx + 0x43cf18], 0x5c
jne 0x409e00
mov byte [edx + 0x43cf18], 0x2f
mov eax, 0x43cf18
inc edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409e10
sub eax, esi
cmp edx, eax
jl 0x409df0
mov eax, 0x43cf18
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409e24
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409e35
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43d230
rep movsb byte es:[edi], byte [esi]
mov byte [0x43cf18], 0
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409e60
sub eax, edx
cmp byte [eax + 0x43d22f], 0x2f
je 0x409f32
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409e80
mov dx, word [0x434650]
mov word [edi], dx
jmp 0x409f32
mov eax, dword [ebx + 0x30]
test eax, eax
je 0x409f07
cmp byte [eax], 0
je 0x409ea9
cmp byte [eax + 1], 0x3a
je 0x409ed9
mov ecx, eax
jmp 0x409eb0
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409eb0
mov edi, 0x43cf18
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409ec1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x409f32
test eax, eax
je 0x409f07
mov ecx, eax
nop
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409ee0
mov edi, 0x43cf18
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409ef1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, 0x43d230
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x409f10
mov ecx, dword [str.file:___]
mov edx, dword [0x434658]
mov dword [eax], ecx
mov cl, byte [0x43465c]
mov dword [eax + 4], edx
mov byte [eax + 8], cl
mov eax, dword [ebx + 0x30]
neg eax
sbb eax, eax
and eax, dword [0x43cf10]
add eax, dword [esp + 0x44]
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409f45
mov edi, 0x43cf18
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409f56
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43cf18
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409f74
sub eax, edx
cmp byte [eax + 0x43cf17], 0x5c
je 0x409fa2
mov edi, 0x43cf18
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x409f90
mov dx, word [0x433824]
mov word [edi], dx
lea eax, [ebp + 5]
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409fa7
mov edi, 0x43cf18
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x409fb8
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, 0x43cf18
xor ecx, ecx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409fd8
sub eax, esi
test eax, eax
jle 0x40a01d
cmp byte [ecx + 0x43cf18], 0x5c
jne 0x409ff5
mov byte [ecx + 0x43cf18], 0x2f
cmp byte [ecx + 0x43cf18], 0x3a
jne 0x40a005
mov byte [ecx + 0x43cf18], 0x7c
mov eax, 0x43cf18
inc ecx
lea esi, [eax + 1]
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a010
sub eax, esi
cmp ecx, eax
jl 0x409fe5
cmp byte [0x43cf18], 0x2f
jne 0x40a034
cmp byte [0x43cf19], 0x2f
mov eax, 0x43cf19
jne 0x40a039
mov eax, 0x43cf18
cmp byte [ebx + 0x21], 0
jne 0x40a06a
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a041
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a052
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40a06f
call fcn.0040c410
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a075
mov cx, word [0x434660]
mov dl, byte [0x434662]
mov word [eax], cx
mov byte [eax + 2], dl
cmp byte [ebx + 0x14], 0
je 0x40a1c5
mov byte [0x43cf18], 0
mov eax, dword [ebx + 0x30]
test eax, eax
je 0x40a0d7
mov ecx, eax
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a0b0
mov edi, 0x43cf18
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a0c1
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 0x30]
neg eax
sbb eax, eax
and eax, dword [0x43cf10]
add eax, dword [esp + 0x44]
mov ecx, eax
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a0f0
mov edi, 0x43cf18
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a101
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, 0x43cf18
rep movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a120
sub eax, edx
cmp byte [eax + 0x43cf17], 0x5c
je 0x40a152
cmp byte [eax + 0x43cf17], 0x2f
je 0x40a152
mov edi, 0x43cf18
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a141
mov ax, word [0x433824]
mov word [edi], ax
cmp byte [ebp + 4], 0
je 0x40a16b
cmp byte [ebx + 0x2b], 0
je 0x40a16b
push 0x43cf18
call fcn.0042a541
add esp, 4
mov al, byte [0x43cf18]
cmp al, 0x5c
je 0x40a178
cmp al, 0x2f
jne 0x40a18a
mov al, byte [0x43cf19]
cmp al, 0x5c
je 0x40a18a
cmp al, 0x2f
mov eax, 0x43cf19
jne 0x40a18f
mov eax, 0x43cf18
cmp byte [ebx + 0x21], 0
jne 0x40a1c0
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a197
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a1a8
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40a1c5
call fcn.0040c410
cmp byte [ebp + 4], 0
je 0x40a22d
cmp byte [ebx + 0x2b], 0
je 0x40a22d
lea eax, [ebp + 5]
mov edx, 0x43cf18
mov dword [esp + 0x20], eax
sub edx, eax
nop
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x40a1e0
push 0x43cf18
call fcn.0042a541
add esp, 4
cmp byte [ebx + 0x21], 0
mov eax, 0x43cf18
jne 0x40a269
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a204
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a215
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40a26e
cmp byte [ebx + 0x21], 0
lea eax, [ebp + 5]
mov dword [esp + 0x20], eax
jne 0x40a269
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a240
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a251
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40a26e
call fcn.0040c410
cmp byte [ebx + 0x18], 0
jne 0x40a2b3
cmp byte [ebp + 4], 0
jne 0x40a2b3
mov eax, 0x43d230
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a282
sub eax, edx
dec eax
js 0x40a2a3
mov edi, edi
mov cl, byte [eax + 0x43d230]
cmp cl, 0x5c
je 0x40a2a3
cmp cl, 0x2e
je 0x40a2a3
dec eax
jns 0x40a290
cmp byte [eax + 0x43d230], 0x2e
jne 0x40a2b3
mov byte [eax + 0x43d230], 0
mov esi, dword [esp + 0x14]
cmp byte [esi + 0x21], 0
mov bx, word [0x434638]
je 0x40a31d
cmp byte [ebp + 4], 0
jne 0x40a2f9
cmp byte [0x43bc90], 0
je 0x40a2f9
mov eax, 0x43d230
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a2e0
mov ecx, dword [str.__A_]
mov dl, byte [0x434668]
mov dword [eax], ecx
mov byte [eax + 4], dl
mov eax, 0x43d230
dec eax
nop
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a300
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov dword [eax], ecx
mov word [eax + 4], dx
jmp 0x40a385
cmp byte [esi + 0x22], 0
je 0x40a33d
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a330
mov word [edi], bx
jmp 0x40a385
mov eax, 0x43d230
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a345
mov esi, dword [esp + 0x34]
sub eax, edx
sub esi, eax
add esi, 5
test esi, esi
jg 0x40a360
mov esi, 1
mov edi, eax
test esi, esi
jle 0x40a37a
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov esi, dword [esp + 0x14]
mov byte [edi + 0x43d230], 0
cmp byte [esi + 0x16], 0
je 0x40abc8
cmp byte [ebp + 4], 0
je 0x40a50c
mov edi, 0x43d230
dec edi
cmp byte [esi + 0x21], 0
je 0x40a490
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a3b0
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40a44b
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a3d2
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a424
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a435
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a451
mov ax, word [0x434574]
mov word [edi], ax
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a468
mov ecx, dword [str.DIR__TD_]
mov edx, dword [0x434670]
mov dword [eax], ecx
mov cl, byte [0x434674]
mov dword [eax + 4], edx
mov byte [eax + 8], cl
jmp 0x40a524
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a490
mov edx, dword [0x434678]
mov dword [edi], edx
cmp byte [esi + 0x22], al
je 0x40a4bd
mov edi, 0x43d230
dec edi
jmp 0x40a4b0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a4b0
mov word [edi], bx
jmp 0x40a524
mov ebx, dword [esp + 0x14]
movzx esi, byte [ebx + 0x23]
neg esi
sbb esi, esi
and esi, 0x12
add esi, 0xc
test esi, esi
jg 0x40a4d8
mov esi, 1
mov eax, 0x43d230
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a4e0
sub eax, edx
mov edi, eax
test esi, esi
jle 0x40a503
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov byte [edi + 0x43d230], 0
jmp 0x40a528
mov eax, dword [ebp + 0x214]
mov ecx, dword [ebp + 0x210]
push eax
push ecx
mov ebx, esi
call fcn.0040c050
add esp, 8
mov ebx, dword [esp + 0x14]
cmp byte [ebx + 0x28], 0
je 0x40a878
lea edx, [esp + 0x5c]
push edx
lea eax, [ebp + 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x60]
push edx
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
cmp byte [ebx + 0x21], 0
je 0x40a621
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a564
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40a606
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a586
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a5d8
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a5f0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a610
mov ax, word [0x434574]
mov word [edi], ax
mov eax, 0x43d230
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a630
sub eax, edx
mov esi, eax
mov ecx, 0x30c
sub ecx, esi
push ecx
lea edx, [esi + 0x43d230]
push edx
push 0
lea eax, [esp + 0x70]
push eax
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_GetDateFormatA]
cmp byte [ebx + 0x21], 0
je 0x40a745
mov eax, 0x43d230
dec eax
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a670
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov edi, 0x43d230
mov dword [eax], ecx
mov word [eax + 4], dx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a691
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40a72c
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a6b3
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a705
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a716
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a732
mov ax, word [0x434574]
mov word [edi], ax
jmp 0x40a7a8
cmp byte [ebx + 0x22], 0
je 0x40a765
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a751
mov cx, word [0x434638]
mov word [edi], cx
jmp 0x40a7a8
mov eax, 0x43d230
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a770
sub eax, edx
sub esi, eax
add esi, 0xc
test esi, esi
jg 0x40a787
mov esi, 1
mov edi, eax
test esi, esi
jle 0x40a7a1
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov byte [edi + 0x43d230], 0
mov eax, 0x43d230
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a7b0
sub eax, edx
mov esi, eax
mov edx, 0x30c
sub edx, esi
push edx
lea eax, [esi + 0x43d230]
push eax
push 0
lea ecx, [esp + 0x70]
push ecx
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_GetTimeFormatA]
cmp byte [ebx + 0x21], 0
je 0x40a80d
mov eax, 0x43d230
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a7f0
mov edx, dword [str.__TD_]
mov cx, word [0x434620]
mov dword [eax], edx
mov word [eax + 4], cx
jmp 0x40a878
cmp byte [ebx + 0x22], 0
je 0x40a834
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a820
mov dx, word [0x434638]
mov word [edi], dx
jmp 0x40a878
mov eax, 0x43d230
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a840
sub eax, edx
sub esi, eax
add esi, 0xc
test esi, esi
jg 0x40a857
mov esi, 1
mov edi, eax
test esi, esi
jle 0x40a871
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov byte [edi + 0x43d230], 0
cmp byte [ebx + 0x29], 0
je 0x40abc8
lea eax, [esp + 0x5c]
push eax
add ebp, 0x218
push ebp
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x60]
push edx
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
mov ebx, dword [esp + 0x14]
cmp byte [ebx + 0x21], 0
je 0x40a971
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a8b8
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40a959
mov eax, 0x43d230
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a8e0
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a932
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a943
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a960
mov ax, word [0x434574]
mov word [edi], ax
mov eax, 0x43d230
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a980
sub eax, edx
mov esi, eax
mov ecx, 0x30c
sub ecx, esi
push ecx
lea edx, [esi + 0x43d230]
push edx
push 0
lea eax, [esp + 0x70]
push eax
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_GetDateFormatA]
cmp byte [ebx + 0x21], 0
je 0x40aa95
mov eax, 0x43d230
dec eax
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40a9c0
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov edi, 0x43d230
mov dword [eax], ecx
mov word [eax + 4], dx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a9e1
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40aa7c
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40aa03
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40aa55
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40aa66
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40aa82
mov ax, word [0x434574]
mov word [edi], ax
jmp 0x40aaf8
cmp byte [ebx + 0x22], 0
je 0x40aab5
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40aaa1
mov cx, word [0x434638]
mov word [edi], cx
jmp 0x40aaf8
mov eax, 0x43d230
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40aac0
sub eax, edx
sub esi, eax
add esi, 0xc
test esi, esi
jg 0x40aad7
mov esi, 1
mov edi, eax
test esi, esi
jle 0x40aaf1
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov byte [edi + 0x43d230], 0
mov eax, 0x43d230
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ab00
sub eax, edx
mov esi, eax
mov edx, 0x30c
sub edx, esi
push edx
lea eax, [esi + 0x43d230]
push eax
push 0
lea ecx, [esp + 0x70]
push ecx
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_GetTimeFormatA]
cmp byte [ebx + 0x21], 0
je 0x40ab5d
mov eax, 0x43d230
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40ab40
mov edx, dword [str.__TD_]
mov cx, word [0x434620]
mov dword [eax], edx
mov word [eax + 4], cx
jmp 0x40abc8
cmp byte [ebx + 0x22], 0
je 0x40ab84
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40ab70
mov dx, word [0x434638]
mov word [edi], dx
jmp 0x40abc8
mov eax, 0x43d230
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ab90
sub eax, edx
sub esi, eax
add esi, 0xc
test esi, esi
jg 0x40aba7
mov esi, 1
mov edi, eax
test esi, esi
jle 0x40abc1
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov byte [edi + 0x43d230], 0
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x25], 0
je 0x40afe3
mov esi, dword [esp + 0x28]
test esi, esi
je 0x40aef9
xor ebx, ebx
test esi, esi
jle 0x40ac0b
mov ebp, dword [esp + 0x30]
mov edi, dword [esp + 0x20]
mov ecx, dword [ebp + ebx*4]
push edi
push ecx
call fcn.004264c7
add esp, 8
test eax, eax
je 0x40ace5
inc ebx
cmp ebx, esi
jl 0x40abf0
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x21], 0
je 0x40ae89
mov edi, 0x43d230
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40ac20
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40acbb
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40ac42
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40ac94
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40aca5
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40acc1
mov ax, word [0x434574]
mov word [edi], ax
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40acd8
jmp 0x40afd0
cmp ebx, esi
jge 0x40ac0b
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x21], 0
je 0x40adb3
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40ad01
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40ad9c
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40ad23
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40ad75
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40ad86
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40ada2
mov ax, word [0x434574]
mov word [edi], ax
mov edx, dword [ebp + ebx*4]
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40adc0
sub eax, esi
lea eax, [eax + edx + 1]
lea ecx, [ecx]
mov cl, byte [eax]
cmp cl, 0x20
je 0x40ade1
cmp cl, 9
je 0x40ade1
cmp cl, 0xc
jne 0x40ade4
inc eax
jmp 0x40add0
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x21], 0
jne 0x40ae19
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40adf0
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40ae01
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40ae1e
call fcn.0040c410
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x21], 0
je 0x40ae50
mov eax, 0x43d230
dec eax
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40ae30
mov edx, dword [str.__TD_]
mov cx, word [0x434620]
mov dword [eax], edx
mov word [eax + 4], cx
jmp 0x40afe3
cmp byte [eax + 0x22], 0
je 0x40ae77
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40ae60
mov dx, word [0x434638]
mov word [edi], dx
jmp 0x40afe3
mov eax, 0x43d230
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ae80
jmp 0x40aeba
cmp byte [eax + 0x22], 0
je 0x40aeab
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40ae95
mov ax, word [0x434638]
mov word [edi], ax
jmp 0x40afe3
mov eax, 0x43d230
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40aeb3
mov ecx, dword [esp + 0x1c]
sub eax, edx
mov edx, dword [esp + 0x38]
sub ecx, eax
lea esi, [ecx + edx + 5]
test esi, esi
jg 0x40aed3
mov esi, 1
mov edi, eax
test esi, esi
jle 0x40aeed
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov byte [edi + 0x43d230], 0
jmp 0x40afe3
cmp byte [eax + 0x21], 0
je 0x40afe3
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40af10
mov ecx, dword [0x434618]
mov dword [edi], ecx
cmp byte [0x43bca0], al
je 0x40afab
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40af32
mov edx, dword [str._BGCOLOR]
mov ecx, dword [0x43454c]
mov dword [eax], edx
mov dx, word [0x434550]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
movzx eax, byte [0x43bc76]
push eax
mov eax, dword [0x43bc74]
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40af84
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40af95
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40afb1
mov ax, word [0x434574]
mov word [edi], ax
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40afc8
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov dword [eax], ecx
mov word [eax + 4], dx
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x24], 0
je 0x40b2e6
mov ebp, dword [esp + 0x18]
xor ebx, ebx
add ebp, 0x228
mov ecx, dword [esp + 0x14]
mov al, byte [ecx + 0x21]
test al, al
jne 0x40b013
cmp dword [esp + ebx*4 + 0x74], 0
jl 0x40b2d9
cmp dword [ebp], 0
je 0x40b1d1
test al, al
je 0x40b0e9
mov edi, 0x43d230
dec edi
jmp 0x40b030
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40b030
mov edx, dword [0x434618]
mov dword [edi], edx
cmp byte [0x43bca0], al
je 0x40b0cd
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40b052
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40b0a4
mov edi, 0x43d230
sub eax, esi
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40b0b3
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x14]
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40b0d3
mov ax, word [0x434574]
mov word [edi], ax
jmp 0x40b15d
test ebx, ebx
jle 0x40b15d
cmp byte [ecx + 0x22], 0
je 0x40b114
mov edi, 0x43d230
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40b100
mov dx, word [0x434638]
mov word [edi], dx
jmp 0x40b15d
mov eax, 0x43d230
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40b120
mov esi, dword [esp + ebx*4 + 0x74]
sub eax, edx
sub esi, eax
test esi, esi
jg 0x40b138
mov esi, 1
mov edi, eax
test esi, esi
jle 0x40b152
push esi
lea eax, [edi + 0x43d230]
push 0x20
push eax
call fcn.0041f9b0
add esp, 0xc
add edi, esi
mov ecx, dword [esp + 0x14]
mov byte [edi + 0x43d230], 0
cmp byte [ecx + 0x21], 0
mov eax, dword [ebp]
jne 0x40b198
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40b168
mov edi, 0x43d230
sub eax, ecx
mov esi, ecx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40b180
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40b19d
call fcn.0040c410
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x21], 0
je 0x40b2d9
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40b1b1
mov ecx, dword [str.__TD_]
mov dx, word [0x434620]
mov dword [eax], ecx
mov word [eax + 4], dx
jmp 0x40b2d9
test al, al
je 0x40b2bb
mov edi, 0x43d230
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40b1e0
cmp byte [0x43bca0], 0
mov eax, dword [0x434618]
mov dword [edi], eax
je 0x40b279
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40b202
mov ecx, dword [str._BGCOLOR]
mov edx, dword [0x43454c]
mov dword [eax], ecx
mov cx, word [0x434550]
mov dword [eax + 4], edx
movzx edx, byte [0x43bc76]
mov word [eax + 8], cx
mov eax, dword [0x43bc74]
push edx
movzx ecx, ah
push ecx
movzx edx, al
push edx
push str.__02X_02X_02X_
push 0x44d59c
call fcn.00418202
mov eax, 0x44d59c
add esp, 0x14
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40b254
mov edi, 0x43d230
sub eax, esi
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40b263
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d230
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40b280
mov ax, word [0x434574]
mov word [edi], ax
mov eax, 0x43d230
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40b297
mov ecx, dword [str.nbsp___TD_]
mov edx, dword [0x434680]
mov dword [eax], ecx
mov ecx, dword [0x434684]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
jmp 0x40b2d9
cmp byte [ecx + 0x22], 0
je 0x40b2d9
mov edi, 0x43d230
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40b2c7
mov dx, word [0x434638]
mov word [edi], dx
inc ebx
add ebp, 4
cmp ebx, 0xc
jl 0x40affd
mov esi, dword [esp + 0x14]
cmp byte [esi + 0x21], 0
jne 0x40b324
mov eax, 0x43d230
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40b2f8
sub eax, edx
dec eax
js 0x40b31e
mov cl, byte [eax + 0x43d230]
cmp cl, 0x20
je 0x40b314
cmp cl, 9
jne 0x40b31e
dec eax
mov byte [eax + 0x43d231], 0
jns 0x40b304
cmp byte [esi + 0x21], 0
je 0x40b34b
mov eax, 0x43d230
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x40b330
mov ecx, dword [str.__TR_]
mov dx, word [0x434634]
mov dword [eax], ecx
mov word [eax + 4], dx
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x48]
push eax
push ecx
mov eax, esi
call fcn.0040bb60
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x54]
add esp, 8
cmp byte [eax + 4], 0
je 0x40b371
mov ecx, dword [esp + 0x54]
inc dword [ecx]
mov edx, dword [eax]
mov eax, dword [0x43c42c]
mov dword [esp + 0x18], edx
test eax, eax
jne 0x40b3ca
cmp dword [esp + 0x18], 0
jne 0x409c00
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x40b39e
push eax
call fcn.0041855e
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x40b3af
push eax
call fcn.0041855e
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0xa4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004181f3
add esp, 0x98
ret
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x40b3db
push eax
call fcn.0041855e
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x409c45
push eax
call fcn.0041855e
add esp, 4
mov eax, 1
jmp 0x40b3b1