Function at 0x73ddc508
Capabilities:
Parse pe header

Disassembly:
push 0x614
push 0x73f31090
call fcn.73eed2a0
mov esi, edx
mov dword [ebp - 0x59c], esi
mov ebx, ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x5d8], eax
push 0x40
xor eax, eax
push eax
lea eax, [ebp - 0x94]
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
push 0xf8
push 0
lea eax, [ebp - 0x18c]
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
xor ecx, ecx
mov dword [ebp - 0x5d0], ecx
mov dword [ebp - 0x5c4], ecx
mov eax, ecx
mov dword [ebp - 0x5e8], eax
mov dword [ebp - 0x5b8], eax
mov dword [ebp - 0x5ac], ecx
mov dword [ebp - 0x5b0], ecx
mov eax, esi
sub eax, 1
je 0x73ddc63b
sub eax, 1
je 0x73ddc5cb
sub eax, 1
jne 0x73ddc628
mov dword [ebp - 0x5a0], ecx
mov edx, dword [ebx + 0x888]
lea ecx, [ebp - 0x624]
call fcn.73ed88b6
lea ecx, [ebx + 0x890]
mov esi, eax
mov edi, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, ecx
mov dword [ebx + 0xce0], 3
jmp 0x73ddc672
mov dword [ebp - 0x5a0], ecx
mov edx, dword [ebx + 0x448]
lea ecx, [ebp - 0x624]
call fcn.73ed88b6
lea ecx, [ebx + 0x450]
mov esi, eax
mov edi, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x460]
mov esi, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x5d8]
test eax, eax
je 0x73ddc612
test dword [eax + 0x48a8], 0x1000000
jne 0x73ddc61d
mov ecx, ebx
call fcn.73ed8839
test eax, eax
je 0x73ddc62f
mov ecx, ebx
call fcn.73ed85bf
test eax, eax
jne 0x73ddc62f
xor eax, eax
jmp 0x73ddd3e4
mov dword [ebx + 0xce0], 2
jmp 0x73ddc67c
mov eax, dword [ebx + 0xdf0]
mov dword [ebp - 0x5a0], eax
mov edx, dword [ebx + 0x20]
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0x60c], eax
mov dword [ebp - 0x608], ecx
mov dword [ebp - 0x604], edx
lea esi, [ebp - 0x60c]
mov dword [ebx + 0xce0], 5
lea edi, [ebx + 0x460]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x460]
mov eax, dword [edi]
mov dword [ebp - 0x5a4], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x600], eax
mov eax, dword [ebx + 0x468]
mov dword [ebp - 0x600], eax
xor ecx, ecx
mov dword [ebx + 0x1050], ecx
mov dword [ebp - 0x5f8], ecx
mov dword [ebp - 0x5cc], ecx
mov dword [ebp - 4], ecx
push 2
lea eax, [ebp - 0x5c8]
push eax
push ecx
push ecx
mov edx, edi
mov esi, dword [ebp - 0x5a0]
mov ecx, esi
call fcn.73ed8925
test eax, eax
jne 0x73ddc6ea
mov dword [0x73f3bcb8], 6
mov dword [ebp - 4], 0xfffffffe
jmp 0x73ddc628
mov eax, dword [ebp - 0x59c]
mov dword [ebx + 0xcd8], eax
mov eax, 0x4944
mov edx, edi
mov ecx, esi
cmp word [ebp - 0x5c8], ax
jne 0x73ddc810
push 0x30
lea eax, [ebp - 0x50]
push eax
xor eax, eax
push eax
push eax
call fcn.73ed8925
test eax, eax
je 0x73ddc6de
mov ecx, 0x14c
cmp word [ebp - 0x4c], cx
je 0x73ddc737
lea ecx, [ebx + 0x890]
call fcn.73ed9184
jmp 0x73ddc6de
mov eax, dword [ebp - 0x2c]
mov dword [ebx + 0xddc], eax
mov eax, dword [ebp - 0x44]
mov dword [ebx + 0x24], eax
mov word [ebx + 0x30], cx
mov eax, dword [ebp - 0x48]
mov dword [ebx + 0x28], eax
movzx eax, word [ebp - 0x4a]
mov dword [ebx + 0x2c], eax
mov eax, dword [ebx + 0x18]
or eax, dword [ebx + 0x1c]
jne 0x73ddc769
mov eax, dword [ebp - 0x40]
mov dword [ebx + 0x18], eax
and dword [ebx + 0x1c], 0
cmp dword [ebx + 0x20], 0
jne 0x73ddc775
mov eax, dword [ebp - 0x3c]
mov dword [ebx + 0x20], eax
mov esi, dword [ebp - 0x38]
test esi, esi
je 0x73ddc7d3
imul ecx, esi, 0x28
call fcn.73dd5d6e
mov edi, eax
mov dword [ebp - 0x5c0], edi
test edi, edi
je 0x73ddcfd6
imul ecx, esi, 0x28
push ecx
push edi
push 0
push 0x30
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddcfd6
lea ecx, [ebx + 0xda8]
push ecx
push esi
push edi
call fcn.73dd54f1
mov dword [ebx + 0xd9c], edi
mov dword [ebx + 0xdd4], esi
mov esi, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x73ddcfd6
xor edx, edx
push 0x1c
pop edi
div edi
mov dword [ebp - 0x5b0], eax
mov dword [ebp - 0x5f0], eax
imul edx, esi, 0x28
mov ecx, dword [ebp - 0x34]
add ecx, 0x30
add edx, ecx
mov dword [ebp - 0x5cc], edx
mov dword [ebp - 0x5ec], edx
xor esi, esi
inc esi
jmp 0x73ddcfe5
mov eax, 0x5a4d
cmp word [ebp - 0x5c8], ax
jne 0x73ddc8a3
push 0x40
lea eax, [ebp - 0x94]
push eax
xor eax, eax
push eax
push eax
call fcn.73ed8925
test eax, eax
je 0x73ddc6d4
push 0xf8
lea eax, [ebp - 0x18c]
push eax
mov eax, dword [ebp - 0x58]
cdq
push edx
push eax
mov edx, edi
mov ecx, esi
call fcn.73ed8925
test eax, eax
je 0x73ddc6d4
mov edx, dword [ebp - 0x18c]
mov dword [ebp - 0x5e0], 0x14c
cmp edx, 0x4550
je 0x73ddc8df
lea esi, [ebp - 0x174]
lea eax, [ebp - 0x188]
mov dword [ebp - 0x5c4], eax
mov dword [ebp - 0x5e4], eax
movzx ecx, word [ebp - 0x178]
mov eax, dword [ebp - 0x58]
add ecx, 0x18
add eax, ecx
jmp 0x73ddc93d
mov eax, 0x14c
mov dword [ebp - 0x5e0], eax
cmp word [ebp - 0x5c8], ax
jne 0x73ddc8e9
push 0xf4
lea eax, [ebp - 0x188]
push eax
xor eax, eax
push eax
push eax
call fcn.73ed8925
test eax, eax
je 0x73ddc6de
mov edx, 0x524f4d20
mov dword [ebp - 0x18c], edx
mov esi, dword [ebp - 0x5d0]
xor ecx, ecx
jmp 0x73ddc94d
push 0x4c
lea eax, [ebp - 0x1dc]
push eax
xor eax, eax
push eax
push eax
call fcn.73ed8925
test eax, eax
je 0x73ddc6d4
mov eax, 0x14c
cmp word [ebp - 0x1dc], ax
jne 0x73ddc6de
lea esi, [ebp - 0x1c8]
lea eax, [ebp - 0x1dc]
mov dword [ebp - 0x5c4], eax
mov dword [ebp - 0x5e4], eax
movzx eax, word [ebp - 0x1cc]
add eax, 0x14
mov edx, dword [ebp - 0x18c]
mov dword [ebp - 0x5e8], eax
xor ecx, ecx
mov eax, ecx
mov dword [ebp - 0x5b8], eax
test esi, esi
je 0x73ddc9a7
mov eax, 0x107
cmp word [esi], ax
jne 0x73ddc998
mov dword [ebx + 0xde4], 1
mov ax, word [esi]
mov word [ebx + 0x470], ax
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], ecx
mov eax, dword [esi + 4]
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], ecx
mov esi, dword [ebp - 0x5e8]
mov edi, dword [ebp - 0x5b8]
mov edx, dword [ebp - 0x59c]
jmp 0x73ddcaea
mov dword [ebx + 0x1290], 0xb
jmp 0x73ddc6de
mov si, word [ebp - 0x174]
movzx ecx, si
call fcn.73dd5242
test eax, eax
je 0x73ddca69
push 0x108
lea eax, [ebp - 0x32c]
push eax
mov eax, dword [ebp - 0x58]
cdq
push edx
push eax
mov edx, edi
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddc6d4
lea eax, [ebp - 0x328]
mov dword [ebp - 0x5c4], eax
mov dword [ebp - 0x5e4], eax
lea eax, [ebp - 0x2a4]
mov dword [ebp - 0x5ac], eax
movzx ecx, word [ebp - 0x318]
mov esi, dword [ebp - 0x58]
add esi, 0x18
add esi, ecx
xor edi, edi
mov ax, word [ebp - 0x314]
mov word [ebx + 0x470], ax
xor eax, eax
inc eax
mov dword [ebx + 0xde0], eax
mov edx, dword [ebp - 0x59c]
cmp edx, 2
je 0x73ddca3a
cmp edx, eax
jne 0x73ddca61
mov eax, dword [ebp - 0x2fc]
mov ecx, dword [ebp - 0x2f8]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], ecx
mov eax, dword [ebp - 0x2f4]
mov dword [ebx + 0xddc], eax
mov eax, dword [ebp - 0x2d4]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp - 0x2dc]
jmp 0x73ddcae7
lea eax, [ebp - 0x188]
mov dword [ebp - 0x5c4], eax
mov dword [ebp - 0x5e4], eax
lea eax, [ebp - 0x114]
mov dword [ebp - 0x5ac], eax
mov word [ebx + 0x470], si
cmp edx, 0x524f4d20
jne 0x73ddca9d
mov esi, 0xf4
jmp 0x73ddcaac
movzx ecx, word [ebp - 0x178]
mov esi, dword [ebp - 0x58]
add ecx, 0x18
add esi, ecx
xor ecx, ecx
mov edi, ecx
mov edx, dword [ebp - 0x59c]
cmp edx, 2
je 0x73ddcac0
cmp edx, 1
jne 0x73ddcae1
mov eax, dword [ebp - 0x158]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], ecx
mov eax, dword [ebp - 0x154]
mov dword [ebx + 0xddc], eax
mov eax, dword [ebp - 0x134]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp - 0x13c]
mov dword [ebx + 0x20], eax
push edx
push edx
push 0x64
pop edx
mov ecx, dword [ebx + 0x105c]
call fcn.73ddd3fc
mov ecx, dword [ebp - 0x5c4]
movzx eax, word [ecx + 2]
mov dword [ebp - 0x5d0], eax
imul eax, eax, 0x28
mov dword [ebp - 0x5b8], eax
mov ecx, eax
call fcn.73dd5d6e
mov dword [ebp - 0x5c0], eax
test eax, eax
je 0x73ddcfd6
push dword [ebp - 0x5b8]
push eax
push edi
push esi
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddcfd6
lea ecx, [ebx + 0xda8]
push ecx
mov esi, dword [ebp - 0x5d0]
push esi
mov edi, dword [ebp - 0x5c0]
push edi
call fcn.73dd54f1
mov dword [ebx + 0xd98], edi
mov dword [ebx + 0xdd0], esi
mov esi, dword [ebp - 0x5c4]
mov ax, word [esi]
mov word [ebx + 0x30], ax
mov edx, dword [ebp - 0x5d8]
mov ecx, ebx
call fcn.73ddd4f1
mov eax, dword [esi + 4]
mov dword [ebx + 0x28], eax
movzx eax, word [esi + 0x12]
mov dword [ebx + 0x2c], eax
mov eax, dword [ebp - 0x59c]
push eax
push eax
push 0x65
pop edx
mov ecx, dword [ebx + 0x105c]
call fcn.73ddd3fc
xor eax, eax
mov dword [ebp - 0x5f4], eax
xor esi, esi
inc esi
mov ecx, 0x200
cmp eax, dword [ebp - 0x5d0]
jae 0x73ddcfd9
cmp dword [ebx + 0xde4], 0
je 0x73ddcc16
mov eax, dword [ebp - 0x5c4]
test word [eax + 0x12], cx
jne 0x73ddcc16
mov edx, 0x73dbcee4
xor ecx, ecx
movzx eax, byte [edi + ecx]
cmp al, byte [edx + ecx]
jne 0x73ddcc16
inc ecx
cmp ecx, 7
jne 0x73ddcbe5
mov eax, esi
mov dword [ebp - 0x5b0], eax
mov dword [ebp - 0x5f0], eax
mov edx, dword [edi + 0xc]
mov dword [ebp - 0x5cc], edx
mov dword [ebp - 0x5ec], edx
jmp 0x73ddcfe5
push dword [ebp - 0x5ac]
mov edx, edi
mov ecx, dword [ebp - 0x5a0]
call fcn.73dd4e60
mov edi, eax
test edi, edi
je 0x73ddccb9
push 0x28
lea eax, [ebx + 0x1028]
push eax
push 0
push edi
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddccb9
mov eax, dword [ebp - 0x5ac]
mov eax, dword [eax + 4]
mov dword [ebp - 0x5d8], eax
push eax
push edi
lea eax, [ebp - 0x624]
push eax
lea ecx, [ebx + 0x460]
call fcn.73ed87be
mov ecx, dword [ebp - 0x5d8]
cmp dword [ebp - 0x61c], ecx
jne 0x73ddccb9
mov eax, dword [ebp - 0x59c]
mov dword [ebx + 0x1004], eax
mov dword [ebx + 0x1070], ecx
mov eax, dword [ebp - 0x5ac]
mov eax, dword [eax]
mov dword [ebx + 0x1068], eax
xor eax, eax
mov dword [ebx + 0x106c], eax
mov dword [ebx + 0x1060], edi
mov dword [ebx + 0x1064], eax
mov eax, dword [ebp - 0x5ac]
add eax, 0x30
push eax
mov edi, dword [ebp - 0x5c0]
mov edx, edi
mov ecx, dword [ebp - 0x5a0]
call fcn.73dd4e60
test eax, eax
je 0x73ddcd02
mov dword [ebp - 0x5cc], eax
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x5ac]
mov eax, dword [eax + 0x34]
xor edx, edx
push 0x1c
pop ecx
div ecx
mov dword [ebp - 0x5b0], eax
mov dword [ebp - 0x5f0], eax
mov eax, dword [ebp - 0x5ac]
add eax, 0x70
push eax
mov edx, edi
mov ecx, dword [ebp - 0x5a0]
call fcn.73dd4e60
mov edi, eax
test edi, edi
je 0x73ddcd6b
push 0x48
push 0
lea eax, [ebp - 0x224]
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
push 0x48
lea eax, [ebp - 0x224]
push eax
push 0
push edi
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddcd6b
cmp dword [ebp - 0x1e0], 0
ja 0x73ddcd65
test byte [ebp - 0x214], 1
je 0x73ddcd6b
mov dword [ebx + 0x12c8], esi
mov eax, dword [ebp - 0x5ac]
add eax, 0x50
push eax
mov edi, dword [ebp - 0x5c0]
mov edx, edi
mov ecx, dword [ebp - 0x5a0]
call fcn.73dd4e60
mov dword [ebp - 0x5d8], eax
test eax, eax
je 0x73ddcfbb
xor edx, edx
mov ecx, edx
mov dword [ebp - 0x5bc], ecx
mov dword [ebp - 0x5b8], ecx
mov eax, dword [ebp - 0x5ac]
mov edi, dword [eax + 0x54]
movzx ecx, word [ebp - 0x174]
call fcn.73dd5242
test eax, eax
je 0x73ddce6a
push 0x140
push edx
lea eax, [ebp - 0x57c]
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
cmp edi, 0xd0
jb 0x73ddcef2
mov eax, 0x140
cmp edi, eax
jbe 0x73ddcdef
mov edi, eax
push edi
lea eax, [ebp - 0x57c]
push eax
push 0
push dword [ebp - 0x5d8]
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddcef2
mov edi, dword [ebp - 0x4b4]
mov eax, edi
mov ecx, dword [ebp - 0x4b0]
or eax, ecx
je 0x73ddce51
movzx eax, word [ebx + 0x30]
mov edx, eax
cmp ax, word [ebp - 0x5e0]
je 0x73ddce4d
mov eax, 0xaa64
cmp dx, ax
je 0x73ddce4d
mov eax, 0x8664
cmp dx, ax
jne 0x73ddce51
mov eax, esi
jmp 0x73ddce53
xor eax, eax
mov dword [ebx + 0x12d0], eax
mov dword [ebp - 0x5bc], edi
mov dword [ebp - 0x5b8], ecx
jmp 0x73ddcefe
push 0xc0
push edx
lea eax, [ebp - 0x43c]
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
cmp edi, 0x80
jb 0x73ddcef2
mov eax, 0xc0
cmp edi, eax
jbe 0x73ddce92
mov edi, eax
push edi
lea eax, [ebp - 0x43c]
push eax
push 0
push dword [ebp - 0x5d8]
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddcef2
mov edi, dword [ebp - 0x3c0]
test edi, edi
je 0x73ddcee9
movzx eax, word [ebx + 0x30]
mov ecx, eax
mov edx, 0x14c
cmp ax, dx
je 0x73ddcee5
mov eax, 0xaa64
cmp cx, ax
je 0x73ddcee5
mov eax, 0x8664
cmp cx, ax
jne 0x73ddcee9
mov eax, esi
jmp 0x73ddceeb
xor eax, eax
xor ecx, ecx
jmp 0x73ddce53
mov edi, dword [ebp - 0x5bc]
mov ecx, dword [ebp - 0x5b8]
cmp dword [ebx + 0x12d0], 0
je 0x73ddcfb5
mov eax, edi
or eax, ecx
je 0x73ddcfb5
movzx eax, word [ebx + 0x30]
mov ecx, eax
mov edx, 0xaa64
cmp ax, dx
je 0x73ddcf33
mov eax, 0x8664
cmp cx, ax
jne 0x73ddcfb5
mov ecx, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
mov eax, ecx
or eax, edx
jne 0x73ddcf45
mov ecx, dword [ebx + 0x18]
mov edx, dword [ebx + 0x1c]
mov dword [ebp - 0x5dc], ecx
mov dword [ebp - 0x5d8], edx
sub edi, ecx
push ecx
push edi
mov edi, dword [ebp - 0x5c0]
mov edx, edi
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8bb4
test eax, eax
je 0x73ddc6de
push 0x50
lea ecx, [ebp - 0x37c]
push ecx
push 0
push eax
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddc6de
cmp dword [ebp - 0x33c], 0
je 0x73ddcfab
cmp dword [ebp - 0x338], 0
jbe 0x73ddcfab
mov eax, esi
jmp 0x73ddcfad
xor eax, eax
mov dword [ebx + 0x12d4], eax
jmp 0x73ddcfbb
mov edi, dword [ebp - 0x5c0]
mov eax, dword [ebp - 0x5f4]
inc eax
mov dword [ebp - 0x5f4], eax
add edi, 0x28
mov dword [ebp - 0x5c0], edi
jmp 0x73ddcbb8
xor esi, esi
inc esi
mov eax, dword [ebp - 0x5b0]
mov edx, dword [ebp - 0x5cc]
mov dword [ebp - 0x5f8], esi
cmp dword [ebp - 0x59c], 2
jne 0x73ddd000
mov dword [ebx + 0xdc0], edx
mov dword [ebx + 0xdc4], eax
push esi
call sym.dbghelp.dll_SymGetExtendedOption
xor edx, edx
mov ecx, dword [ebp - 0x5b0]
test eax, eax
jne 0x73ddd018
mov al, 1
mov edi, edx
jmp 0x73ddd01d
mov al, dl
lea edi, [ecx - 1]
test al, al
jne 0x73ddd02a
or ecx, 0xffffffff
mov dword [ebp - 0x5b0], ecx
movzx eax, al
lea eax, [eax*2 - 1]
mov dword [ebp - 0x5d8], eax
mov al, dl
mov byte [ebp - 0x5a5], al
mov dword [ebp - 0x610], edi
cmp edi, ecx
je 0x73ddd3d7
test al, al
jne 0x73ddd3d7
imul eax, edi, 0x1c
add eax, dword [ebp - 0x5cc]
push 0x1c
lea ecx, [ebp - 0x598]
push ecx
push edx
push eax
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
je 0x73ddc6de
mov esi, dword [ebp - 0x588]
test esi, esi
je 0x73ddd3b7
push esi
push dword [ebp - 0x580]
lea eax, [ebp - 0x624]
push eax
lea ecx, [ebx + 0x460]
call fcn.73ed87be
cmp dword [ebp - 0x61c], esi
jne 0x73ddd3b7
push 0
mov esi, dword [ebp - 0x59c]
push esi
mov edx, dword [ebp - 0x58c]
mov ecx, dword [ebx + 0x105c]
call fcn.73ddd3fc
mov eax, dword [ebp - 0x58c]
sub eax, 1
je 0x73ddd28b
sub eax, 1
je 0x73ddd1af
dec eax
sub eax, 1
jne 0x73ddd1a8
mov esi, dword [ebp - 0x580]
cmp esi, dword [ebp - 0x600]
jae 0x73ddd189
mov edx, dword [ebp - 0x5a4]
mov ecx, dword [ebp - 0x59c]
cmp dword [edx + esi], 1
jne 0x73ddd2dd
cmp ecx, 3
jne 0x73ddd14a
lea edx, [ebx + 0x23c]
cmp word [edx], ax
jne 0x73ddd2d7
push 0x105
mov ecx, dword [ebp - 0x5a4]
add ecx, 0xc
add ecx, esi
call fcn.73dd975e
jmp 0x73ddd2d1
lea ecx, [edx + 0xc]
add ecx, esi
mov eax, dword [ebp - 0x5c4]
mov edx, 0x200
push 0x105
test word [eax + 0x12], dx
je 0x73ddd17e
lea edx, [ebx + 0x67c]
call fcn.73dd975e
mov eax, dword [ebp - 0x594]
mov dword [ebx + 0x8a0], eax
jmp 0x73ddd189
lea edx, [ebx + 0x23c]
call fcn.73dd975e
push dword [ebp - 0x59c]
xor eax, eax
push eax
mov edx, dword [ebp - 0x58c]
mov ecx, dword [ebx + 0x105c]
call fcn.73ddd3fc
jmp 0x73ddd2d1
mov ecx, esi
jmp 0x73ddd2d7
cmp dword [ebp - 0x5a0], 0
je 0x73ddd228
cmp dword [ebp - 0x584], 0
je 0x73ddc6de
mov ecx, dword [ebp - 0x588]
call fcn.73dd5d6e
mov esi, eax
test esi, esi
je 0x73ddd2d1
push dword [ebp - 0x588]
push esi
xor eax, eax
push eax
push dword [ebp - 0x584]
lea edx, [ebx + 0x460]
mov ecx, dword [ebp - 0x5a0]
call fcn.73ed8925
test eax, eax
jne 0x73ddd20b
mov ecx, esi
call fcn.73dd5ea9
jmp 0x73ddc6de
lea ecx, [ebx + 0xce8]
xor eax, eax
push eax
push dword [ebp - 0x588]
push esi
call fcn.73dd526c
mov esi, dword [ebp - 0x59c]
jmp 0x73ddd248
lea ecx, [ebx + 0xce8]
push 1
push dword [ebp - 0x588]
mov eax, dword [ebp - 0x580]
add eax, dword [ebp - 0x5a4]
push eax
call fcn.73dd526c
mov eax, 0x504d
cmp word [ebp - 0x58e], ax
jne 0x73ddd260
mov dword [ebx + 0x8b0], 1
mov dword [ebx + 0x100c], esi
mov ecx, ebx
call fcn.73ddd432
push esi
xor eax, eax
push eax
mov edx, dword [ebp - 0x58c]
mov ecx, dword [ebx + 0x105c]
call fcn.73ddd3fc
mov byte [ebp - 0x5a5], 1
jmp 0x73ddd2d1
mov esi, dword [ebp - 0x580]
cmp esi, dword [ebp - 0x600]
jae 0x73ddd2c7
lea ecx, [ebx + 0xd00]
push 1
push dword [ebp - 0x588]
mov eax, dword [ebp - 0x5a4]
add eax, esi
push eax
call fcn.73dd526c
mov eax, dword [ebp - 0x59c]
mov dword [ebx + 0x1008], eax
push eax
jmp 0x73ddd18f
mov dword [ebx + 0x1050], 1
mov ecx, dword [ebp - 0x59c]
mov edx, dword [ebp - 0x5a4]
mov esi, dword [ebp - 0x580]
cmp esi, dword [ebp - 0x600]
jae 0x73ddd3b7
mov eax, dword [ebp - 0x58c]
sub eax, 3
je 0x73ddd376
dec eax
sub eax, 1
je 0x73ddd367
dec eax
sub eax, 1
je 0x73ddd339
sub eax, 1
jne 0x73ddd3b7
lea ecx, [ebx + 0xd80]
push 1
mov eax, dword [ebp - 0x588]
shr eax, 3
push eax
lea eax, [edx + esi]
push eax
call fcn.73dd526c
mov esi, dword [ebp - 0x59c]
mov dword [ebx + 0x101c], esi
push esi
jmp 0x73ddd3a3
lea ecx, [ebx + 0xd68]
push 1
mov eax, dword [ebp - 0x588]
shr eax, 3
push eax
mov eax, dword [ebp - 0x580]
add eax, edx
push eax
call fcn.73dd526c
mov esi, dword [ebp - 0x59c]
mov dword [ebx + 0x1018], esi
jmp 0x73ddd336
mov dword [ebx + 0x1020], ecx
push ecx
xor eax, eax
push eax
push 5
pop edx
jmp 0x73ddd3ac
lea ecx, [ebx + 0xd20]
push 1
mov eax, dword [ebp - 0x588]
shr eax, 4
push eax
mov eax, dword [ebp - 0x580]
add eax, edx
push eax
call fcn.73dd526c
mov eax, dword [ebp - 0x59c]
mov dword [ebx + 0x1014], eax
push eax
xor eax, eax
push eax
mov edx, dword [ebp - 0x58c]
mov ecx, dword [ebx + 0x105c]
call fcn.73ddd3fc
add edi, dword [ebp - 0x5d8]
mov al, byte [ebp - 0x5a5]
mov ecx, dword [ebp - 0x5b0]
xor edx, edx
jmp 0x73ddd042
mov dword [ebp - 4], 0xfffffffe
mov eax, dword [ebp - 0x5f8]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
leave
ret 4