Function at 0x4e2280
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fe941
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
mov eax, dword [0x57b070]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x40], edi
mov esi, dword [ebp + 8]
mov dword [ebp - 4], 1
call fcn.004e3290
test esi, esi
je 0x4e2466
cmp byte [esi + 0xc], 0x45
jne 0x4e23a6
cmp byte [esi + 0xd], 0x2d
jne 0x4e23a6
cmp byte [esi + 0xe], 0x53
jne 0x4e23a6
cmp byte [esi + 0xf], 0x61
jne 0x4e23a6
cmp byte [esi + 0x10], 0x66
jne 0x4e23a6
cmp byte [esi + 0x11], 0x65
jne 0x4e23a6
cmp byte [esi + 0x12], 0x4e
jne 0x4e23a6
cmp byte [esi + 0x13], 0x65
jne 0x4e23a6
cmp byte [esi + 0x14], 0x74
jne 0x4e23a6
lea eax, [ebp - 0x58]
mov dword [edi + 0xbc], 0x31
push eax
call fcn.004b35c1
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.004b4336
push dword [ebp - 0x34]
cmp dword [0x57e638], 8
mov ecx, 0x57e624
push dword [ebp - 0x30]
cmovae ecx, dword [0x57e624]
push dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
push dword [ebp - 0x28]
inc eax
push eax
mov eax, dword [ebp - 0x20]
add eax, 0x76c
push eax
push ecx
push 0x5835b8
push str.__s___s___04d__02d__02d__02d:_02d:_02d_
call fcn.004df180
push 0xfc
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.SafeNetErr_r_n
call fcn.004df180
add esp, 0x40
xor bl, bl
jmp 0x4e3246
cmp byte [esi + 5], 0x46
lea eax, [esi + 5]
jne 0x4e2422
inc eax
cmp byte [eax], 0x61
jne 0x4e2422
inc eax
cmp byte [eax], 0x73
jne 0x4e2422
inc eax
cmp byte [eax], 0x6f
jne 0x4e2422
inc eax
cmp byte [eax], 0x6f
jne 0x4e2422
inc eax
cmp byte [eax], 0x53
jne 0x4e2422
inc eax
cmp byte [eax], 0x65
jne 0x4e2422
inc eax
cmp byte [eax], 0x63
jne 0x4e2422
inc eax
cmp byte [eax], 0x75
jne 0x4e2422
inc eax
cmp byte [eax], 0x72
jne 0x4e2422
inc eax
cmp byte [eax], 0x65
jne 0x4e2422
mov dword [edi + 0xbc], 0x2d
call fcn.004df100
push 0x102
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.fasooErr_r_n
call fcn.004df180
add esp, 0x10
xor bl, bl
jmp 0x4e3246
push 0x21
mov ecx, esi
call fcn.004e2130
test al, al
je 0x4e2466
mov dword [edi + 0xbc], 0x2b
call fcn.004df100
push 0x108
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.jiamiErr_r_n
call fcn.004df180
add esp, 0x10
xor bl, bl
jmp 0x4e3246
xor cl, cl
mov byte [ebp - 0x35], cl
test esi, esi
je 0x4e24b8
cmp byte [esi], 0x84
jne 0x4e24b8
cmp byte [esi + 1], 0x7d
lea eax, [esi + 1]
jne 0x4e24b8
inc eax
cmp byte [eax], 0x1c
jne 0x4e24b8
mov dword [edi + 0xbc], 0x2f
call fcn.004df100
push 0x10f
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.3ByteErr_r_n
call fcn.004df180
mov cl, 1
add esp, 0x10
mov byte [ebp - 0x35], cl
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
mov byte [ebp - 4], 4
mov dword [edi + 0x90], esi
cmp dword [esi], 0
sete al
add esi, 4
jne 0x4e254b
test cl, cl
jne 0x4e2520
mov dword [edi + 0xbc], 0x34
call fcn.004df100
push 0x121
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptr__NULL_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov ebx, dword [esi]
mov dword [edi + 0x8c], ebx
test ebx, ebx
jns 0x4e2596
test cl, cl
jne 0x4e2565
mov dword [edi + 0xbc], 0x35
call fcn.004df100
push 0x12a
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [edi + 0x8c]
push str.configsize___0:_d__r_n
call fcn.004df180
add esp, 0x14
jmp 0x4e3229
xor edx, edx
movzx eax, al
test ebx, ebx
cmove edx, eax
add esi, 4
mov dword [ebp - 0x44], edx
mov dword [edi], esi
lea eax, [esi + ebx]
mov dword [ebp - 0x54], eax
test eax, eax
jne 0x4e25eb
test cl, cl
jne 0x4e25c0
mov dword [edi + 0xbc], 0x36
call fcn.004df100
push 0x138
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.endptr__Null__r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov eax, dword [esi]
add ebx, eax
mov dword [ebp - 0x3c], eax
test eax, eax
jns 0x4e2632
test cl, cl
jne 0x4e2604
mov dword [edi + 0xbc], 0x37
call fcn.004df100
push 0x141
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [ebp - 0x3c]
push str.keyNum___0:_d__r_n
call fcn.004df180
add esp, 0x14
jmp 0x4e3229
mov eax, dword [ebp - 0x44]
xor edx, edx
cmp dword [ebp - 0x3c], edx
movzx eax, al
cmove edx, eax
add esi, 4
jne 0x4e267e
test cl, cl
jne 0x4e2653
mov dword [edi + 0xbc], 0x38
call fcn.004df100
push 0x14d
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov eax, dword [esi]
add ebx, eax
mov dword [ebp - 0x4c], eax
test eax, eax
jns 0x4e26c5
test cl, cl
jne 0x4e2697
mov dword [edi + 0xbc], 0x39
call fcn.004df100
push 0x156
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [ebp - 0x4c]
push str.attrinum___0:_d_r_n
call fcn.004df180
add esp, 0x14
jmp 0x4e3229
cmp dword [ebp - 0x4c], 0
movzx eax, dl
mov edx, 0
cmove edx, eax
add esi, 4
jne 0x4e2712
test cl, cl
jne 0x4e26e7
mov dword [edi + 0xbc], 0x3a
call fcn.004df100
push 0x162
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov eax, dword [esi]
add ebx, eax
mov dword [ebp - 0x50], eax
test eax, eax
jns 0x4e2759
test cl, cl
jne 0x4e272b
mov dword [edi + 0xbc], 0x3b
call fcn.004df100
push 0x16b
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [ebp - 0x50]
push str.datanum___0:_d__r_n
call fcn.004df180
add esp, 0x14
jmp 0x4e3229
xor ecx, ecx
movzx eax, dl
cmp dword [ebp - 0x50], ecx
mov dword [ebp - 0x60], 0
cmove ecx, eax
add esi, 4
cmp dword [ebp - 0x3c], 0
mov dword [ebp - 0x64], ecx
jle 0x4e288a
nop dword [eax + eax]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov byte [ebp - 4], 5
test esi, esi
je 0x4e2b03
movsx eax, word [esi]
mov dword [ebp - 0x30], eax
cmp eax, 0xffffffff
jle 0x4e2abd
cmp eax, 0x64
jge 0x4e2abd
add esi, 2
je 0x4e2aa1
movsx ecx, word [esi]
add eax, ecx
mov dword [ebp - 0x44], ecx
add ebx, eax
test ecx, ecx
js 0x4e2a5b
add esi, 2
mov dword [ebp - 0x5c], 0
test ecx, ecx
jle 0x4e2816
test esi, esi
je 0x4e29c0
movsx eax, word [esi]
add ebx, eax
mov dword [ebp - 0x48], eax
cmp eax, 0xc
ja 0x4e297a
lea eax, [ebp - 0x48]
add esi, 2
push eax
lea ecx, [ebp - 0x2c]
call fcn.00447cb0
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp eax, dword [ebp - 0x44]
jl 0x4e27e2
test esi, esi
je 0x4e2a3c
mov ecx, dword [esi]
mov dword [ebp - 0x20], ecx
add esi, 4
je 0x4e2a1d
mov edx, dword [esi]
mov dword [ebp - 0x1c], edx
add esi, 4
je 0x4e29fe
mov eax, dword [esi]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x18], eax
add esi, 4
je 0x4e29df
mov eax, dword [esi]
add esi, 4
mov dword [ebp - 0x14], eax
add eax, dword [ebp - 0x44]
add eax, edx
add eax, ecx
lea ecx, [ebp - 0x88]
add ebx, eax
lea eax, [ebp - 0x30]
push eax
call fcn.004466f0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 4
call fcn.004469e0
mov eax, dword [ebp - 0x60]
mov edi, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x60], eax
cmp eax, dword [ebp - 0x3c]
jl 0x4e2780
cmp dword [ebp - 0x4c], 0
mov dword [ebp - 0x44], 0
jle 0x4e28f8
test esi, esi
je 0x4e2bf7
mov ecx, dword [esi]
mov dword [ebp - 0x20], ecx
add esi, 4
je 0x4e2bbc
mov edx, dword [esi]
mov dword [ebp - 0x1c], edx
add esi, 4
je 0x4e2b81
mov eax, dword [esi]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x18], eax
add esi, 4
je 0x4e2b46
mov eax, dword [esi]
add esi, 4
mov dword [ebp - 0x14], eax
add eax, dword [ebp - 0x48]
add eax, edx
add eax, ecx
lea ecx, [ebp - 0x7c]
add ebx, eax
lea eax, [ebp - 0x20]
push eax
call fcn.00446560
mov eax, dword [ebp - 0x44]
mov edi, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x44], eax
cmp eax, dword [ebp - 0x4c]
jl 0x4e2897
cmp dword [ebp - 0x50], 0
mov dword [ebp - 0x40], 0
jle 0x4e292f
test esi, esi
je 0x4e2c32
mov eax, dword [esi]
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x44], eax
add ebx, eax
lea eax, [ebp - 0x44]
add esi, 4
push eax
call fcn.00446450
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x50]
jl 0x4e2905
test ebx, ebx
jne 0x4e2c6d
cmp byte [ebp - 0x64], bl
je 0x4e2c6d
cmp byte [ebp - 0x35], bl
jne 0x4e294f
mov dword [edi + 0xbc], 0x5a
call fcn.004df100
push 0x216
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.dict_is_full_of_0_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e298a
mov dword [edi + 0xbc], 0x41
call fcn.004df100
push 0x1a7
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [ebp - 0x48]
push str.temDataType___ecMinDataType__temDataType___ecMaxDataType:_d__r_n
call fcn.004df180
add esp, 0x14
lea ecx, [ebp - 0x2c]
call fcn.004469e0
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e29d0
mov dword [edi + 0xbc], 0x40
call fcn.004df100
push 0x19e
jmp 0x4e2b1d
cmp byte [ebp - 0x35], 0
jne 0x4e29ef
mov dword [edi + 0xbc], 0x45
call fcn.004df100
push 0x1cf
jmp 0x4e2b1d
cmp byte [ebp - 0x35], 0
jne 0x4e2a0e
mov dword [edi + 0xbc], 0x44
call fcn.004df100
push 0x1c5
jmp 0x4e2b1d
cmp byte [ebp - 0x35], 0
jne 0x4e2a2d
mov dword [edi + 0xbc], 0x43
call fcn.004df100
push 0x1bb
jmp 0x4e2b1d
cmp byte [ebp - 0x35], 0
jne 0x4e2a4c
mov dword [edi + 0xbc], 0x42
call fcn.004df100
push 0x1b1
jmp 0x4e2b1d
cmp byte [ebp - 0x35], 0
jne 0x4e2a6b
mov dword [edi + 0xbc], 0x3f
call fcn.004df100
push 0x194
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [ebp - 0x44]
push str.datatypenum___0:_d__r_n
call fcn.004df180
add esp, 0x14
lea ecx, [ebp - 0x2c]
call fcn.004469e0
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e2ab1
mov dword [edi + 0xbc], 0x3e
call fcn.004df100
push 0x18b
jmp 0x4e2b1d
cmp byte [ebp - 0x35], 0
jne 0x4e2acd
mov dword [edi + 0xbc], 0x3d
call fcn.004df100
push 0x183
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [ebp - 0x30]
push str.temKey.m_eKeyType___ecMinKeyType__temKey.m_eKeyType___ecMaxKeyType:_d_r_n
call fcn.004df180
add esp, 0x14
lea ecx, [ebp - 0x2c]
call fcn.004469e0
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e2b13
mov dword [edi + 0xbc], 0x3c
call fcn.004df100
push 0x17a
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
lea ecx, [ebp - 0x2c]
call fcn.004469e0
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e2b56
mov dword [edi + 0xbc], 0x49
call fcn.004df100
push 0x1fc
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e2b91
mov dword [edi + 0xbc], 0x48
call fcn.004df100
push 0x1f2
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e2bcc
mov dword [edi + 0xbc], 0x47
call fcn.004df100
push 0x1e8
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e2c07
mov dword [edi + 0xbc], 0x46
call fcn.004df100
push 0x1de
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e2c42
mov dword [edi + 0xbc], 0x4a
call fcn.004df100
push 0x20a
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.baseptrnull_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp dword [ebp - 0x54], esi
je 0x4e2cad
cmp byte [ebp - 0x35], 0
jne 0x4e2c82
mov dword [edi + 0xbc], 0x4b
call fcn.004df100
push 0x21e
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.p_endPtr___p_pBasePtr_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
sub esp, 0xc
lea eax, [ebp + 0x1c]
mov ecx, esp
mov dword [ebp - 0x54], esp
push eax
call fcn.004463c0
sub esp, 0xc
mov byte [ebp - 4], 6
lea eax, [ebp + 0x10]
mov dword [ebp - 0x64], esp
mov ecx, esp
push eax
call fcn.004463c0
sub esp, 0xc
mov byte [ebp - 4], 7
lea eax, [ebp - 0x70]
mov dword [ebp - 0x40], esp
mov ecx, esp
push eax
call fcn.004463c0
sub esp, 0xc
mov byte [ebp - 4], 8
lea eax, [ebp - 0x7c]
mov dword [ebp - 0x44], esp
mov ecx, esp
push eax
call fcn.00446670
sub esp, 0xc
mov byte [ebp - 4], 9
lea eax, [ebp - 0x88]
mov ecx, esp
push eax
call fcn.00446910
mov ecx, edi
mov byte [ebp - 4], 4
call fcn.004e3390
test al, al
jne 0x4e2d5b
cmp byte [ebp - 0x35], al
jne 0x4e2d30
mov dword [edi + 0xbc], 0x4c
call fcn.004df100
push 0x225
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.init_false_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov dword [edi + 4], esi
test esi, esi
jne 0x4e2d9d
cmp byte [ebp - 0x35], 0
jne 0x4e2d72
mov dword [edi + 0xbc], 0x4d
call fcn.004df100
push 0x22e
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.header__NULL_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0xc]
je 0x4e2de6
cmp byte [ebp - 0x35], 0
jne 0x4e2db5
mov dword [edi + 0xbc], 0x4e
call fcn.004df100
push 0x236
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [ebp + 0xc]
push dword [esi + 4]
push str.header__m_nFomatId___p_nCurFormat__heads_id_is_d__format_id_is__d_r_n
call fcn.004df180
add esp, 0x18
jmp 0x4e3229
mov eax, dword [esi]
add eax, ecx
add ebx, eax
mov eax, dword [esi + 8]
test eax, eax
jg 0x4e2e31
cmp byte [ebp - 0x35], 0
jne 0x4e2e03
mov dword [edi + 0xbc], 0x4f
call fcn.004df100
push 0x23e
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [esi + 8]
push str.header__m_nTotalSize___0:_d_r_n
call fcn.004df180
add esp, 0x14
jmp 0x4e3229
mov edx, dword [esi + 0xc]
add ebx, eax
test edx, edx
js 0x4e31ea
mov eax, dword [esi + 0x10]
test eax, eax
js 0x4e31ea
mov ecx, dword [esi + 0x14]
test ecx, ecx
js 0x4e31ea
add ecx, eax
add ecx, edx
lea eax, [ecx + 2]
lea eax, [eax + eax*2]
shl eax, 2
cmp eax, dword [edi + 0x88]
je 0x4e2eb3
cmp byte [ebp - 0x35], 0
jne 0x4e2e79
mov dword [edi + 0xbc], 0x51
call fcn.004df100
push 0x24d
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [edi + 0x88]
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push str.sizeof_t_baseDictHeader____header__m_nKeyNum__header__m_nAttriNum__header__m_nDataNum___12___m_nHeadSize__keynum:_d__attrinum:_d__datanum:_d__headsize:_d_r_n
call fcn.004df180
add esp, 0x20
jmp 0x4e3229
add ebx, ecx
mov dword [ebp - 0x40], 0
lea ecx, [esi + 0x18]
mov dword [ebp - 0x3c], ecx
test edx, edx
jle 0x4e2ef9
test ecx, ecx
je 0x4e2fcb
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x34]
call fcn.004478b0
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ecx + 8]
add eax, dword [ecx + 4]
add eax, dword [ecx]
add ecx, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp eax, dword [esi + 0xc]
jl 0x4e2ec6
cmp dword [esi + 0x10], 0
mov dword [ebp - 0x40], 0
jle 0x4e2f39
test ecx, ecx
je 0x4e3006
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x40]
call fcn.004478b0
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ecx + 8]
add eax, dword [ecx + 4]
add eax, dword [ecx]
add ecx, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp eax, dword [esi + 0x10]
jl 0x4e2f06
cmp dword [esi + 0x14], 0
mov dword [ebp - 0x40], 0
jle 0x4e2f79
test ecx, ecx
je 0x4e3041
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x4c]
call fcn.004478b0
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ecx + 8]
add eax, dword [ecx + 4]
add eax, dword [ecx]
add ecx, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp eax, dword [esi + 0x14]
jl 0x4e2f46
mov eax, dword [edi + 4]
mov edx, dword [edi + 0x88]
add eax, edx
cmp ecx, eax
je 0x4e307c
cmp byte [ebp - 0x35], 0
jne 0x4e2f9c
mov dword [edi + 0xbc], 0x55
call fcn.004df100
push 0x27f
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [edi + 0x88]
push dword [edi + 4]
push dword [ebp - 0x3c]
push str.tail___m_pHeader__m_nHeadSize__tailptr:_d__headptr:_d__headsize:_d_r_n
jmp 0x4e3221
cmp byte [ebp - 0x35], 0
jne 0x4e2fdb
mov dword [edi + 0xbc], 0x52
call fcn.004df100
push 0x258
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.tail__NULL_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e3016
mov dword [edi + 0xbc], 0x53
call fcn.004df100
push 0x265
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.tail__NULL_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e3051
mov dword [edi + 0xbc], 0x54
call fcn.004df100
push 0x272
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.tail__NULL_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov eax, dword [edi + 0x90]
not ebx
cmp ebx, dword [eax]
je 0x4e30cc
cmp byte [ebp - 0x35], 0
jne 0x4e3098
mov dword [edi + 0xbc], 0x56
call fcn.004df100
push 0x287
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
mov eax, dword [edi + 0x90]
push dword [eax]
push ebx
push str.nCheckNum___m_pCheckNum__checknum:_d__mpChecknum:_d_r_n
call fcn.004df180
add esp, 0x18
jmp 0x4e3229
lea ecx, [edx + esi]
mov dword [edi + 8], ecx
test ecx, ecx
jne 0x4e3110
cmp byte [ebp - 0x35], cl
jne 0x4e30e5
mov dword [edi + 0xbc], 0x57
call fcn.004df100
push 0x28f
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.m_pBuff__NULL_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
mov eax, dword [esi + 8]
xor esi, esi
add eax, ecx
mov dword [edi + 0xc], eax
mov eax, dword [edi + 0x14]
sub eax, dword [edi + 0x10]
test eax, 0xffffffe0
jle 0x4e3165
push esi
mov ecx, edi
call fcn.004e0db0
mov ebx, eax
test ebx, ebx
js 0x4e31b1
mov ecx, dword [edi + 8]
add ecx, ebx
mov dword [ebp - 0x54], ecx
je 0x4e3176
lea eax, [ebp - 0x54]
push eax
lea ecx, [edi + 0x70]
call fcn.004478b0
push esi
mov ecx, edi
call fcn.004e0fd0
mov eax, dword [edi + 0x14]
inc esi
sub eax, dword [edi + 0x10]
sar eax, 5
cmp esi, eax
jl 0x4e3127
mov dword [edi + 0xbc], 0
mov bl, 1
jmp 0x4e322b
cmp byte [ebp - 0x35], 0
jne 0x4e3186
mov dword [edi + 0xbc], 0x59
call fcn.004df100
push 0x2a3
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push str.pTem__NULL_r_n
call fcn.004df180
add esp, 0x10
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e31c1
mov dword [edi + 0xbc], 0x58
call fcn.004df100
push 0x29b
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push ebx
push str.nHashOft___0:_d_r_n
call fcn.004df180
add esp, 0x14
jmp 0x4e3229
cmp byte [ebp - 0x35], 0
jne 0x4e31fa
mov dword [edi + 0xbc], 0x50
call fcn.004df100
push 0x246
push str.t_baseDict::AttachImpl
push str.__S_L:_d__
call fcn.004df180
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [esi + 0xc]
push str.header__m_nKeyNum___0__header__m_nAttriNum___0__header__m_nDataNum___0__keynum:_d__attrinum:_d__datanum:_d_r_n
call fcn.004df180
add esp, 0x1c
xor bl, bl
lea ecx, [ebp - 0x70]
call fcn.004469e0
lea ecx, [ebp - 0x7c]
call fcn.0043bee0
lea ecx, [ebp - 0x88]
call fcn.00446c90
lea ecx, [ebp + 0x10]
call fcn.004469e0
lea ecx, [ebp + 0x1c]
call fcn.004469e0
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004a35cb
mov esp, ebp
pop ebp
ret 0x20