Function at 0x4a5966
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5640b3
mov eax, dword fs:[0]
push eax
sub esp, 0x4a8
mov eax, dword [0x5f7350]
xor eax, esp
mov dword [esp + 0x4a0], eax
push ebx
push esi
push edi
mov eax, dword [0x5f7350]
xor eax, esp
push eax
lea eax, [esp + 0x4b8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x18], eax
mov eax, dword [eax]
xor ebx, ebx
mov edi, edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov eax, dword [edi]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], ebx
mov byte [esp + 0x2e], bl
mov byte [esp + 0x2f], bl
mov dword [esp + 0x38], 2
mov dword [esp + 0x28], ebx
test eax, 0x1000000
je 0x4a6ea7
push ebx
lea eax, [esp + 0x17]
push eax
push 0x5a7804
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a6251
cmp byte [esp + 0x13], bl
jne 0x4a6251
push ebx
lea eax, [esp + 0x17]
push eax
push 0x5a780c
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a5aa5
mov esi, 0x10000000
cmp byte [esp + 0x13], bl
jne 0x4a603b
mov dword [esp + 0x34], ebx
mov byte [esp + 0x27], bl
cmp dword [esp + 0x34], ebx
je 0x4a5c9b
cmp byte [esp + 0x27], bl
je 0x4a5f23
push esi
lea eax, [esp + 0x17]
push eax
push 0x5a780c
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a6277
push ebx
lea eax, [esp + 0x17]
push eax
push 0x5a780c
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
je 0x4a5a35
cmp dword [esp + 0x38], ebx
je 0x4a6e74
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 0x40
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 0x41
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a5af9
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a5b12
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x39c]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x42
cmp dword [eax + 0x14], 0x10
jb 0x4a5b34
mov eax, dword [eax]
push eax
lea eax, [esp + 0x380]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0x43
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x380]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x3a0]
mov byte [esp + 0x4c8], 0x41
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x3f0]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x44
cmp dword [eax + 0x14], 0x10
jb 0x4a5ba5
mov eax, dword [eax]
push eax
lea eax, [esp + 0x380]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0x45
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x380]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x3f4]
mov byte [esp + 0x4c8], 0x41
call fcn.00403fde
lea eax, [esp + 0x3c]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x46
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x47
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a5c76
lea eax, [esp + 0x2d4]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x41
jmp 0x4a6c75
push ebx
lea eax, [esp + 0x17]
push eax
push 0x590310
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a5f19
cmp byte [esp + 0x13], bl
jne 0x4a5f19
push 0x5c098c
push dword [esp + 0x20]
call fcn.0054ef20
add dword [esp + 0x24], eax
push 0x5a789c
push dword [esp + 0x28]
call fcn.00515790
mov ecx, dword [esp + 0x2c]
add dword [esp + 0x2c], eax
add esp, 0x10
mov dword [esp + 0x28], eax
mov dword [esp + 0x34], ecx
cmp eax, ebx
je 0x4a5d20
push esi
lea eax, [esp + 0x17]
push eax
push 0x590310
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
je 0x4a5a47
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 8
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 9
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a5d74
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a5d8d
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x364]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0xa
cmp dword [eax + 0x14], 0x10
jb 0x4a5daf
mov eax, dword [eax]
push eax
lea eax, [esp + 0x348]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0xb
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x348]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x368]
mov byte [esp + 0x4c8], 9
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x364]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0xc
cmp dword [eax + 0x14], 0x10
jb 0x4a5e20
mov eax, dword [eax]
push eax
lea eax, [esp + 0x348]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0xd
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x348]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x368]
mov byte [esp + 0x4c8], 9
call fcn.00403fde
lea eax, [esp + 0xd4]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0xe
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2f0]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0xf
cmp dword [esp + 0x304], 8
mov eax, dword [esp + 0x2f0]
jae 0x4a5ef4
lea eax, [esp + 0x2f0]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2f4]
call fcn.0040412d
mov byte [esp + 0x4c0], 9
jmp 0x4a646b
cmp byte [esp + 0x27], bl
jne 0x4a6c7e
cmp dword [esp + 0x34], ebx
je 0x4a6c7e
cmp dword [esp + 0x28], ebx
je 0x4a6c7e
push ebx
lea eax, [esp + 0x17]
push eax
push str.value
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a6c7e
cmp byte [esp + 0x13], bl
jne 0x4a6c7e
mov eax, dword [esp + 0x34]
mov al, byte [eax]
cmp al, 0x64
je 0x4a5fbb
cmp al, 0x72
jne 0x4a6492
cmp byte [esp + 0x2e], bl
jne 0x4a668b
cmp dword [esp + 0x28], 0xa
jne 0x4a668b
push 0xa
push dword [esp + 0x38]
push str.resolution
call fcn.0051a9c3
add esp, 0xc
test eax, eax
jne 0x4a668b
push dword [esp + 0x14]
mov edx, edi
lea ecx, [esp + 0x20]
call fcn.0050861f
mov byte [esp + 0x32], 1
jmp 0x4a6003
cmp byte [esp + 0x2f], bl
jne 0x4a6a84
cmp dword [esp + 0x28], 0xb
jne 0x4a6a84
push 0xb
push dword [esp + 0x38]
push 0x5a7f88
call fcn.0051a9c3
add esp, 0xc
test eax, eax
jne 0x4a6a84
mov eax, dword [esp + 0x14]
add eax, 0x1c
push eax
mov edx, edi
lea ecx, [esp + 0x20]
call fcn.0050861f
mov byte [esp + 0x33], 1
pop ecx
cmp al, bl
je 0x4a688b
push esi
lea eax, [esp + 0x17]
push eax
push str.value
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a688b
dec dword [esp + 0x38]
mov byte [esp + 0x27], al
jmp 0x4a5a47
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2cc], eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], cx
mov dword [esp + 0x4c0], ebx
mov dword [esp + 0x2b0], eax
xor eax, eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], ax
mov byte [esp + 0x4c0], 1
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a608b
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a60a4
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x364]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 2
cmp dword [eax + 0x14], 0x10
jb 0x4a60c6
mov eax, dword [eax]
push eax
lea eax, [esp + 0x348]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 3
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x348]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x368]
mov byte [esp + 0x4c8], 1
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x364]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 4
cmp dword [eax + 0x14], 0x10
jb 0x4a6137
mov eax, dword [eax]
push eax
lea eax, [esp + 0x348]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 5
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x348]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x368]
mov byte [esp + 0x4c8], bl
call fcn.00403fde
lea eax, [esp + 0xd4]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 6
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2f0]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 7
cmp dword [esp + 0x304], 8
mov eax, dword [esp + 0x2f0]
jae 0x4a620a
lea eax, [esp + 0x2f0]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2f4]
call fcn.0040412d
lea eax, [esp + 0xd4]
mov byte [esp + 0x4c0], bl
call fcn.0040262a
push ebx
lea esi, [esp + 0x2a0]
call fcn.0040412d
lea esi, [esp + 0x2b8]
xor edi, edi
push ebx
call fcn.0040412d
xor al, al
mov ecx, dword [esp + 0x4b8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x4a0]
xor ecx, esp
call fcn.005146df
mov esp, ebp
pop ebp
ret
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 0x38
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 0x39
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a62cb
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a62e4
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x364]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x3a
cmp dword [eax + 0x14], 0x10
jb 0x4a6306
mov eax, dword [eax]
push eax
lea eax, [esp + 0x348]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0x3b
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x348]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x368]
mov byte [esp + 0x4c8], 0x39
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x32c]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x3c
cmp dword [eax + 0x14], 0x10
jb 0x4a6377
mov eax, dword [eax]
push eax
lea eax, [esp + 0x348]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0x3d
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x348]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x330]
mov byte [esp + 0x4c8], 0x39
call fcn.00403fde
lea eax, [esp + 0xd4]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x3e
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2f0]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x3f
cmp dword [esp + 0x304], 8
mov eax, dword [esp + 0x2f0]
jae 0x4a644b
lea eax, [esp + 0x2f0]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2f4]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x39
lea eax, [esp + 0xd4]
call fcn.0040262a
lea esi, [esp + 0x2b8]
xor edi, edi
push ebx
call fcn.0040412d
lea esi, [esp + 0x29c]
jmp 0x4a6249
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 0x20
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 0x21
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a64e6
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a64ff
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x460]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x22
cmp dword [eax + 0x14], 0x10
jb 0x4a6521
mov eax, dword [eax]
push eax
lea eax, [esp + 0x32c]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0x23
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x32c]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x464]
mov byte [esp + 0x4c8], 0x21
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x428]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x24
cmp dword [eax + 0x14], 0x10
jb 0x4a6592
mov eax, dword [eax]
push eax
lea eax, [esp + 0x498]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0x25
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x498]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x42c]
mov byte [esp + 0x4c8], 0x21
call fcn.00403fde
lea eax, [esp + 0xd4]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x26
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2f0]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x27
cmp dword [esp + 0x304], 8
mov eax, dword [esp + 0x2f0]
jae 0x4a6666
lea eax, [esp + 0x2f0]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2f4]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x21
jmp 0x4a646b
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 0x18
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 0x19
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a66df
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a66f8
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x444]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x1a
cmp dword [eax + 0x14], 0x10
jb 0x4a671a
mov eax, dword [eax]
push eax
lea eax, [esp + 0x47c]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0x1b
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x47c]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x448]
mov byte [esp + 0x4c8], 0x19
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x3b8]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x4a678b
mov eax, dword [eax]
push eax
lea eax, [esp + 0x3d4]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0x1d
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x3d4]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x3bc]
mov byte [esp + 0x4c8], 0x19
call fcn.00403fde
lea eax, [esp + 0x16c]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x1e
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x30c]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x1f
cmp dword [esp + 0x320], 8
mov eax, dword [esp + 0x30c]
jae 0x4a685f
lea eax, [esp + 0x30c]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x310]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x19
lea eax, [esp + 0x16c]
jmp 0x4a6472
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 0x28
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 0x29
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a68df
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a68f8
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x3d4]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x2a
cmp dword [eax + 0x14], 0x10
jb 0x4a691a
mov eax, dword [eax]
push eax
lea eax, [esp + 0x3b8]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0x2b
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x3b8]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x3d8]
mov byte [esp + 0x4c8], 0x29
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x3d4]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x2c
cmp dword [eax + 0x14], 0x10
jb 0x4a698b
mov eax, dword [eax]
push eax
lea eax, [esp + 0x3b8]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0x2d
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x3b8]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x3d8]
mov byte [esp + 0x4c8], 0x29
call fcn.00403fde
lea eax, [esp + 0x16c]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x2e
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x30c]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x2f
cmp dword [esp + 0x320], 8
mov eax, dword [esp + 0x30c]
jae 0x4a6a5f
lea eax, [esp + 0x30c]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x310]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x29
jmp 0x4a687f
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 0x10
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 0x11
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a6ad8
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a6af1
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x3f0]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x12
cmp dword [eax + 0x14], 0x10
jb 0x4a6b13
mov eax, dword [eax]
push eax
lea eax, [esp + 0x40c]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0x13
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x40c]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x3f4]
mov byte [esp + 0x4c8], 0x11
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x380]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x14
cmp dword [eax + 0x14], 0x10
jb 0x4a6b84
mov eax, dword [eax]
push eax
lea eax, [esp + 0x39c]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0x15
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x39c]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x384]
mov byte [esp + 0x4c8], 0x11
call fcn.00403fde
lea eax, [esp + 0x3c]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x16
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x17
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a6c55
lea eax, [esp + 0x2d4]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x11
lea eax, [esp + 0x3c]
jmp 0x4a6472
push 7
pop eax
xor ecx, ecx
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2ac], ebx
mov word [esp + 0x29c], cx
mov dword [esp + 0x4c0], 0x30
mov dword [esp + 0x2cc], eax
xor eax, eax
mov dword [esp + 0x2c8], ebx
mov word [esp + 0x2b8], ax
mov byte [esp + 0x4c0], 0x31
mov eax, dword [esp + 0x1c]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4a6cd2
sub eax, esi
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a6ceb
lea eax, [esp + 0x14]
push dword [eax]
lea esi, [esp + 0x39c]
push dword [esp + 0x20]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x32
cmp dword [eax + 0x14], 0x10
jb 0x4a6d0d
mov eax, dword [eax]
push eax
lea eax, [esp + 0x380]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x29c]
mov byte [esp + 0x4c0], 0x33
call fcn.00404022
push 1
xor edi, edi
lea esi, [esp + 0x380]
call fcn.0040412d
push edi
push 1
lea ecx, [esp + 0x3a0]
mov byte [esp + 0x4c8], 0x31
call fcn.00403fde
push dword [esp + 0x28]
lea esi, [esp + 0x39c]
push dword [esp + 0x38]
call fcn.0040fc13
mov byte [esp + 0x4c0], 0x34
cmp dword [eax + 0x14], 0x10
jb 0x4a6d7e
mov eax, dword [eax]
push eax
lea eax, [esp + 0x380]
push eax
call fcn.0048f055
pop ecx
pop ecx
mov ebx, eax
lea eax, [esp + 0x2b8]
mov byte [esp + 0x4c0], 0x35
call fcn.00404022
xor ebx, ebx
inc ebx
push ebx
xor edi, edi
lea esi, [esp + 0x380]
call fcn.0040412d
push edi
push ebx
lea ecx, [esp + 0x3a0]
mov byte [esp + 0x4c8], 0x31
call fcn.00403fde
lea eax, [esp + 0x3c]
push eax
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x36
call fcn.00405d65
push esi
lea ecx, [esp + 0x2c4]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x37
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a6e4f
lea eax, [esp + 0x2d4]
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x31
jmp 0x4a6c75
push esi
lea eax, [esp + 0x17]
push eax
push 0x5a7804
mov edx, edi
lea ecx, [esp + 0x28]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a6251
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [ecx], eax
mov al, 1
jmp 0x4a6253
test eax, 0x10000000
je 0x4a6251
push ebx
lea eax, [esp + 0x17]
push eax
push str.struct
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a6251
cmp byte [esp + 0x13], bl
jne 0x4a6251
push ebx
lea eax, [esp + 0x17]
push eax
mov esi, str.member
push esi
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a6f67
cmp byte [esp + 0x13], bl
jne 0x4a7249
mov dword [esp + 0x30], ebx
mov byte [esp + 0x27], bl
cmp dword [esp + 0x30], ebx
je 0x4a709b
cmp byte [esp + 0x27], bl
je 0x4a712d
push 0x10000000
lea eax, [esp + 0x17]
push eax
push esi
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a7379
push ebx
lea eax, [esp + 0x17]
push eax
push esi
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
je 0x4a6efb
cmp dword [esp + 0x38], ebx
je 0x4a7b4c
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a6f75
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a6f94
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x348]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x364]
mov dword [esp + 0x4c4], 0x68
call fcn.00404836
lea eax, [esp + 0x204]
push eax
mov byte [esp + 0x4c4], 0x69
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x6a
call fcn.00405d65
push esi
lea ecx, [esp + 0x36c]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x350]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2b8]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x6b
cmp dword [esp + 0x2cc], 8
mov eax, dword [esp + 0x2b8]
jae 0x4a7053
lea eax, [esp + 0x2b8]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2bc]
call fcn.0040412d
lea eax, [esp + 0x204]
mov byte [esp + 0x4c0], 0x69
call fcn.0040262a
push ebx
lea esi, [esp + 0x364]
call fcn.0040412d
lea esi, [esp + 0x344]
jmp 0x4a6249
push ebx
lea eax, [esp + 0x17]
push eax
push str.name
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a7123
cmp byte [esp + 0x13], bl
jne 0x4a7123
push eax
lea esi, [esp + 0x24]
call fcn.005075ff
mov esi, dword [esp + 0x24]
mov dword [esp], str.__r_n_t_
push esi
call fcn.0051ac09
pop ecx
pop ecx
lea ecx, [esi + eax*2]
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], esi
mov dword [esp + 0x20], ecx
cmp eax, ebx
je 0x4a748a
push 0x10000000
lea eax, [esp + 0x17]
push eax
push str.name
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a748a
mov esi, str.member
jmp 0x4a6f0d
cmp byte [esp + 0x27], bl
jne 0x4a7a3b
cmp dword [esp + 0x30], ebx
je 0x4a7a3b
cmp dword [esp + 0x28], ebx
je 0x4a7a3b
push ebx
lea eax, [esp + 0x17]
push eax
push 0x587394
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a7a3b
cmp byte [esp + 0x13], bl
jne 0x4a7a3b
mov eax, dword [esp + 0x30]
mov al, byte [eax]
cmp al, 0x64
je 0x4a71c5
cmp al, 0x72
jne 0x4a759b
cmp byte [esp + 0x2e], bl
jne 0x4a76c9
cmp dword [esp + 0x28], 0xa
jne 0x4a76c9
push 0xa
push dword [esp + 0x34]
push 0x596268
call fcn.0051ac4f
add esp, 0xc
test eax, eax
jne 0x4a76c9
push dword [esp + 0x14]
mov edx, edi
lea ecx, [esp + 0x24]
call fcn.0050861f
mov byte [esp + 0x32], 1
jmp 0x4a720d
cmp byte [esp + 0x2f], bl
jne 0x4a7920
cmp dword [esp + 0x28], 0xb
jne 0x4a7920
push 0xb
push dword [esp + 0x34]
push str.displayMode
call fcn.0051ac4f
add esp, 0xc
test eax, eax
jne 0x4a7920
mov eax, dword [esp + 0x14]
add eax, 0x1c
push eax
mov edx, edi
lea ecx, [esp + 0x24]
call fcn.0050861f
mov byte [esp + 0x33], 1
pop ecx
cmp al, bl
je 0x4a77f0
push 0x10000000
lea eax, [esp + 0x17]
push eax
push 0x587394
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a77f0
dec dword [esp + 0x38]
mov byte [esp + 0x27], al
jmp 0x4a6f0d
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a7257
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a7276
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x2f4]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x310]
mov dword [esp + 0x4c4], 0x48
call fcn.00404836
lea eax, [esp + 0x3c]
push eax
mov byte [esp + 0x4c4], 0x49
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x4a
call fcn.00405d65
push esi
lea ecx, [esp + 0x318]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2fc]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x4b
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a7332
lea eax, [esp + 0x2d4]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x49
lea eax, [esp + 0x3c]
call fcn.0040262a
push ebx
xor edi, edi
lea esi, [esp + 0x310]
call fcn.0040412d
lea esi, [esp + 0x2f0]
jmp 0x4a6249
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a7387
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a73a6
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x2f4]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x310]
mov dword [esp + 0x4c4], 0x64
call fcn.00404836
lea eax, [esp + 0x3c]
push eax
mov byte [esp + 0x4c4], 0x65
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x66
call fcn.00405d65
push esi
lea ecx, [esp + 0x318]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2fc]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x67
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a7462
lea eax, [esp + 0x2d4]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x65
jmp 0x4a7355
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a7498
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a74b7
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x2f4]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x310]
mov dword [esp + 0x4c4], 0x4c
call fcn.00404836
lea eax, [esp + 0x3c]
push eax
mov byte [esp + 0x4c4], 0x4d
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x4e
call fcn.00405d65
push esi
lea ecx, [esp + 0x318]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2fc]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x4f
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a7573
lea eax, [esp + 0x2d4]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x4d
jmp 0x4a7355
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a75a9
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a75c8
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x32c]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x2a0]
mov dword [esp + 0x4c4], 0x58
call fcn.00404836
lea eax, [esp + 0x3c]
push eax
mov byte [esp + 0x4c4], 0x59
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x5a
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x334]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x5b
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a7684
lea eax, [esp + 0x2d4]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
lea eax, [esp + 0x3c]
mov byte [esp + 0x4c0], 0x59
call fcn.0040262a
push ebx
lea esi, [esp + 0x2a0]
call fcn.0040412d
lea esi, [esp + 0x328]
jmp 0x4a6249
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a76d7
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a76f6
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x2a0]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x32c]
mov dword [esp + 0x4c4], 0x54
call fcn.00404836
lea eax, [esp + 0x16c]
push eax
mov byte [esp + 0x4c4], 0x55
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x56
call fcn.00405d65
push esi
lea ecx, [esp + 0x334]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x30c]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x57
cmp dword [esp + 0x320], 8
mov eax, dword [esp + 0x30c]
jae 0x4a77b5
lea eax, [esp + 0x30c]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x310]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x55
lea eax, [esp + 0x16c]
call fcn.0040262a
lea esi, [esp + 0x328]
jmp 0x4a647e
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a77fe
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a781d
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x310]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x32c]
mov dword [esp + 0x4c4], 0x5c
call fcn.00404836
lea eax, [esp + 0x3c]
push eax
mov byte [esp + 0x4c4], 0x5d
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x5e
call fcn.00405d65
push esi
lea ecx, [esp + 0x334]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x318]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x5f
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a78d9
lea eax, [esp + 0x2d4]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x5d
lea eax, [esp + 0x3c]
call fcn.0040262a
push ebx
xor edi, edi
lea esi, [esp + 0x32c]
call fcn.0040412d
lea esi, [esp + 0x30c]
jmp 0x4a6249
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a792e
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a794d
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x2a0]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x32c]
mov dword [esp + 0x4c4], 0x50
call fcn.00404836
lea eax, [esp + 0xd4]
push eax
mov byte [esp + 0x4c4], 0x51
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x52
call fcn.00405d65
push esi
lea ecx, [esp + 0x334]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x2a8]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2f0]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x53
cmp dword [esp + 0x304], 8
mov eax, dword [esp + 0x2f0]
jae 0x4a7a0c
lea eax, [esp + 0x2f0]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2f4]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x51
lea eax, [esp + 0xd4]
jmp 0x4a77df
mov eax, dword [esp + 0x20]
push 0x14
pop edi
mov dword [esp + 0x18], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4a7a49
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp eax, edi
lea eax, [esp + 0x18]
ja 0x4a7a68
lea eax, [esp + 0x14]
push dword [eax]
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x310]
call fcn.00404836
push dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x32c]
mov dword [esp + 0x4c4], 0x60
call fcn.00404836
lea eax, [esp + 0x3c]
push eax
mov byte [esp + 0x4c4], 0x61
call fcn.00403689
mov esi, eax
push str.struct_parsing_error:_last_struct_member_name__
push esi
mov byte [esp + 0x4c8], 0x62
call fcn.00405d65
push esi
lea ecx, [esp + 0x334]
call fcn.00411926
add esp, 0xc
push str.__part_of_XML:__
push esi
call fcn.00405d65
push esi
lea ecx, [esp + 0x318]
call fcn.00411926
add esp, 0xc
push 0x5d
push esi
call fcn.00411d3a
pop ecx
pop ecx
lea eax, [esp + 0x2d4]
push eax
mov eax, esi
call fcn.004036f3
mov byte [esp + 0x4c0], 0x63
cmp dword [esp + 0x2e8], 8
mov eax, dword [esp + 0x2d4]
jae 0x4a7b24
lea eax, [esp + 0x2d4]
xor ebx, ebx
inc ebx
push eax
mov ecx, ebx
call fcn.00492cc7
pop ecx
push ebx
xor edi, edi
lea esi, [esp + 0x2d8]
call fcn.0040412d
mov byte [esp + 0x4c0], 0x61
jmp 0x4a78fc
push 0x10000000
lea eax, [esp + 0x17]
push eax
push str.struct
mov edx, edi
lea ecx, [esp + 0x2c]
call fcn.00507ad5
add esp, 0xc
cmp eax, 1
jne 0x4a6251
mov eax, dword [esp + 0x20]
jmp 0x4a6e9a